Home

PostgreSQL

qianmoQqianmoQ· 更新于 2026-10-19· 阅读 2 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

PostgreSQL

PostgresContainer sets POSTGRES_USER, POSTGRES_PASSWORD, and POSTGRES_DB, then waits with pg_isready.

Requirements

  • PHP extension: ext-pdo_pgsql
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php

declare(strict_types=1);

require_once 'vendor/autoload.php';

use Testcontainers\Modules\PostgresContainer;

$container = (new PostgresContainer())
    ->withPostgresUser('bar')
    ->withPostgresDatabase('foo')
    ->start();

try {
    $pdo = new PDO(
        sprintf('pgsql:host=%s;port=%d;dbname=foo', $container->getHost(), $container->getFirstMappedPort()),
        'bar',
        'test',
    );

    $query = $pdo->query('SELECT datname FROM pg_database');
    $databases = $query->fetchAll(PDO::FETCH_COLUMN);
} finally {
    $container->stop();
}

评论

登录后参与评论

正在加载评论…