関数・クラス解説
PDO::__construct
version:PHP 5 >= 5.1.0, PHP 7, PECL pdo (公式)データベースへの接続を表す PDO インスタンスを生成する
公式リファレンス
説明
public PDO::__construct ( string $dsn [, string $username [, string $passwd [, array $options ]]] )
指定されたデータベースへの接続を表す PDO インスタンスを生成します。
パラメータ
- dsn
- データソース名(Data Source Name)またはDSN。データベースに接続するために 必要な情報が含まれます。 一般に、DSNはPDOドライバ名の後にコロンが続き、 各PDOドライバに固有の接続構文が続きます。より多くの情報は PDO driver-specific documentation にあります。 dsn パラメータは、データベースへの接続を生成する ために必要な引数を指定する方法として、3種類の方法をサポートします。
- ドライバ呼び出し
- dsn に完全な DSN を指定します。
- URI 呼び出し
- dsn は、uri: の後に DSN 文字列を含むファイルの位置を定義する URI が続く形式となります。 この URI には、ローカルファイルまたはリモート URL を指定することができます。 uri:file:///path/to/dsnfile
- エイリアス
- dsn は、DSN 文字列を定義する php.ini の pdo.dsn.name へマップする名前 name からなります。
注意: エイリアスは、.htaccess や httpd.conf ではなく、 php.ini で定義する必要があります。
- username
- DSN 文字列のユーザー名。このパラメータは、いくつかの PDO ドライバではオプションです。
- passwd
- パスワード。DSN 文字列で必要とされる場合に指定。
- options
- ドライバ固有の接続オプションを指定するキー=> 値の配列。
返値
成功時に PDO オブジェクトを返します。
エラー
PDO::__construct() は、 指定されたデータベースへの接続に失敗した場合、 PDOException を投げます。
サンプル
例1 ドライバ呼び出しにより PDO インスタンスを生成する
/* ドライバ呼び出しを使用して MySQL データベースに接続する */
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
例2 URI 呼び出しにより PDO インスタンスを生成する
以下の例では、ファイル /usr/local/dbconnect が存在し、 PHP がこのファイルを読み込む権限を有していることを仮定します。 このファイルには、 PDO_ODBC により DB2 データベースに接続するための PDO DSN が含まれています。
odbc:DSN=SAMPLE;UID=john;PWD=mypass
これにより、PHP スクリプトでは、単に uri: パラメータを渡し、 ファイルの URI を示すだけでデータベース接続を作成することができるようになります。
/* ドライバ呼び出しを使用して ODBC データベースに接続する */
$dsn = 'uri:file:///usr/local/dbconnect';
$user = '';
$password = '';
try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
例3 エイリアスにより PDO インスタンスを生成する
以下の例では、php.ini にエイリアス mydb のみで MySQL データベースに接続できるようにするための以下のエントリが含まれることを 仮定します。
[PDO]pdo.dsn.mydb="mysql:dbname=testdb;host=localhost"
/* エイリアスを使用して ODBC データベースに接続する */
$dsn = 'mydb';
$user = '';
$password = '';
try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo '接続に失敗しました: ' . $e->getMessage();
}
ワード検索
※入力キーワードが、関数名・説明文・タグに含まれるものを検索関数名アルファベット別
最終更新一覧
●stristr
大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却
●stripslashes
バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く
●stripos
大文字小文字を区別せずに文字列が最初に現れる位置を取得する
●stripcslashes
addcslashes() でクォートされた文字列をアンクォートする
●strip_tags
文字列から HTML と PHP のタグを除去して返却
●strcspn
指定した文字が最初に現れる位置を調べる
●strcoll
ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する
●strcmp
2つの文字列を比較し同じか(あるいは大小)を判定する
●strchr
strstr() のエイリアス
●strcasecmp
2つの文字列を比較(大文字小文字を区別せず同じとみなす)
カテゴリー一覧
PHP の振る舞いの変更
音声フォーマットの操作
認証サービス
コマンドライン関連
圧縮およびアーカイブ
暗号
データベース関連
日付および時刻関連
ファイルシステム
自然言語および文字エンコーディング
画像処理および作成
メール関連
数学
テキスト以外の MIME 型
プロセス制御
その他の基本モジュール
その他のサービス
検索エンジン用の拡張モジュール
サーバー固有のモジュール
セッション関連
テキスト処理
変数・データ型関連
ウェブサービス
Windows 用のモジュール
XML 操作
GUI用の拡張モジュール