#navi(../)
* PDOを使ってPostgreSQLに接続する [#o4455920]
PDO(PHP Data Object)を使ってPostgreSQLに接続するサンプルコード等を以下に記します。
#contents
#htmlinsertpcsp(db-top.html,db-sp.html)
* 関連記事 [#i60d9fbd]
-[[PHPでPostgreSQLに接続する・pg_connect>PHP/PostgreSQLに接続する・pg_connect]]
* 参考資料 [#d6fbd104]
-[[PHP: 接続、および接続の管理>http://php.net/manual/ja/pdo.connections.php]]~
http://php.net/manual/ja/pdo.connections.php
* PDOを使ってPostgreSQLに接続してみる [#df5dfd2e]
PDOを使ってPostgreSQLに接続するサンプルコードを以下に記します。
PostgreSQLのpg_hba.confの設定の抜粋です。~
以下にように設定してあります。
host all all 127.0.0.1/32 trust
サンプルコードに記してあるDSNですが、pg_hba.confの設定によりPostgreSQLに接続するために必要な項目が増減します。~
以下の記事が参考になると思います。
-[[PHPでPostgreSQLに接続する・pg_connect>PHP/PostgreSQLに接続する・pg_connect]]
** サンプルコード [#z11748af]
#ref(pdo-pgsql.php.zip)
<?php
$dsn = 'pgsql:dbname=postgres;host=127.0.0.1;port=5432';
$uid = 'postgres';
$pwd = '';
try{
$hDB = new PDO($dsn, $uid, $pwd);
$sql = "SELECT now();";
foreach ($hDB->query($sql) as $row) {
print $row[0] . "\n";
}
$hDB = null;
}catch (PDOException $e){
print('[ERROR] ' . $e->getMessage() . "\n");
die();
}
?>
上記サンプルスクリプトを簡単に説明すると、以下のようになります。
new PDOでPostgreSQLに接続しています。~
パスワードが空白なのは、pg_hba.confにtrustを指定しているためパスワードが不要だからです。~
変数$dsn, $uid, $pwdはみなさんの環境に応じて変更してください。
** 実行結果 [#v71d6772]
[sakura@centos6 ~]$ php pdo-pgsql.php
2012-10-19 20:07:40.129616+09
#htmlinsertpcsp(db-btm.html,db-sp.html)