pg_connect
(PHP 4, PHP 5, PHP 7)
pg_connect — PostgreSQL 接続をオープンする
説明
pg_connect
( string $connection_string
[, int $connect_type
] ) : resource
pg_connect() は、connection_string
で指定された情報を用いてデータベースとの接続をオープンします。
同じ connection_string
引数で 2 回
pg_connect() 関数がコールされた場合は、
connect_type
に
PGSQL_CONNECT_FORCE_NEW
を指定していない限り
既存の接続が返されます。
複数のパラメータをサポートする古い構文 $conn = pg_connect("host", "port", "options", "tty", "dbname") は推奨されません。
パラメータ
connection_string
すべてデフォルトのパラメータを使用する場合には
connection_string
を空にすることが可能です。 または 1 つ以上のパラメータを空白で区切って指定することも可能です。 個々のパラメータはkeyword = value
の形式で 設定します。等号の前後の空白はあってもなくてもかまいません。 空の値や空白を含む値を指定する場合は、その値をシングルクォートで 囲みます(例:keyword = 'a value'
)。値の中に シングルクォートやバックスラッシュが含まれる場合は、それらを バックスラッシュでエスケープする必要があります(例: \' および \\)。現在利用できるパラメータは以下のとおりです。
host
,hostaddr
,port
,dbname
(デフォルトはuser
の値),user
,password
,connect_timeout
,options
,tty
(無視されます),sslmode
,requiressl
(非推奨。代わりにsslmode
を推奨します) およびservice
。これらのうち実際にどの パラメータが使えるかは、PostgreSQL のバージョンに依存します。options
パラメータを使うと、 サーバー側で実行されるコマンドラインパラメータを指定することができます。connect_type
PGSQL_CONNECT_FORCE_NEW
が渡された場合は、 たとえconnection_string
が既存の接続と まったく同一であっても新しい接続をオープンします。PGSQL_CONNECT_ASYNC
を指定すると、 非同期接続を確立します。この接続の状態は、 pg_connect_poll() あるいは pg_connection_status() で確認できます。
返り値
成功した場合に PostgreSQL の接続リソース、失敗した場合に false
を返します。
変更履歴
バージョン | 説明 |
---|---|
5.6.0 | connect_type として、定数
|
例
例1 pg_connect() の使用法
<?php$dbconn = pg_connect("dbname=mary");// "mary"という名前のデータベースに接続$dbconn2 = pg_connect("host=localhost port=5432 dbname=mary");// "localhost"のポート"5432"にて"mary"という名前のデータベースに接続$dbconn3 = pg_connect("host=sheep port=5432 dbname=mary user=lamb password=foo");// ユーザー名とパスワードを指定してホスト"sheep"上の"mary"という名前のデータベースに接続$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";$dbconn4 = pg_connect($conn_string);// ユーザー名とパスワードを指定してホスト"sheep"上の"test"という名前のデータベースへ接続$dbconn5 = pg_connect("host=localhost options='--client_encoding=UTF8'");// "localhost" のデータベースに接続する際に、エンコーディングを UTF-8 に指定?>
参考
- pg_pconnect() - 持続的な PostgreSQL 接続をオープンする
- pg_close() - PostgreSQL 接続をクローズする
- pg_host() - 接続に関連するホスト名を返す
- pg_port() - 接続に関連するポート番号を返す
- pg_tty() - 接続に関する TTY 名を返す
- pg_options() - 接続に関連するオプションを取得する
- pg_dbname() - データベース名を取得する