ショコラ
PHP で PDO を使って PostgreSQL に接続するには?
docker-php-ext-install で pdo_pgsql をインストールしてキメマス。
pgsql をインストールしなくてもいけるんだなぁ。
もっさん先輩
手順
PHP で PDO を使って PostgreSQL に接続する手順。
- PHPコンテナを起動します。
docker run -it php
- apt-get アップデートします。
apt-get update
- pdo_pgsql に必要な libpq-devパッケージをインストールします。
apt-get install -y libpq-dev
–no-install-recommends
オプション有り → 1652 kB
オプション無し → 1652 kB
–no-install-recommendsオプションを付けても同じサイズなので外します。
- pdo_pgsql をインストールします。
docker-php-ext-install pdo_pgsql
- PostgreSQL に接続するテストプログラムを作ってみます。
cat <<'EOF' > postgres.php
<?php
$dsn = 'pgsql:host={ホスト} port=5432 dbname={データベース名}';
$user = '{ユーザー名}';
$password = '{パスワード}';
$pdo = new PDO($dsn,$user,$password);
$stm = $pdo->prepare('SELECT * FROM {テーブル名}');
$stm->execute();
var_dump($stm->fetch(PDO::FETCH_ASSOC));
EOF
- データベースに接続します。
php postgres.php
以上