DB: 2005年11月アーカイブ

PDO 関数

| | コメント(4)

PHP 5.1 になり、PDO 関数が標準でサポートされた。PDO とは PHP Data Object の頭文字で、データベースの為のクラス郡。かっこよく言えばデータベース抽象化レイヤーであり、さかしげに言えばインピーダンス ミスマッチを解消するO/Rマッパーではない。シティーボーイなら、データベース アブストラクト レイヤなんて言っちゃうかもしれない。この辺りの考え方に対するネーミングに惑わされてはいけない。結局はプログラムとデータベースの接続を楽チンにしたいだけなのだから。同じような物に PEAR:DB 等があるが、PDO はシンプル・軽量が売りだそうな。身内向けのドキュメントを書く事があったのでその準備編。

準備

PDO 関数を利用する為には PHP 5 と PDO エクステンション、それと使用するデータベース用の PDO ドライバの3つが必要です。
導入例として、Win32 環境で稼動している Apache™ 2.0 に PHP をモジュールとしてインストールする方法、及び PDO を用いて MySQL™ にアクセスする際の手順を示します。

  1. PHP のウェブサイトから PHP 5 のパッケージをダウンロードします。
    ダウンロードしたパッケージを、適当なフォルダへ解凍します。
    今回は PHP 5.1.1 zip package を用意し、 "C:\PHP" へ作成しました。
  2. PHP の設定を行います。
    php-recommanded.ini を複製し、それを php.ini にリネームします。

    作成した php.ini を開き、設定を確認します。

    変更前 変更後 備考
    display_erros = Off display_erros = On 実行時エラーを出力するかどうかを表します
    display_startup_errors = Off display_startup_errors = On PHP の起動シーケンスで発生するエラーを表示するかどうかを表します
    extension_dir = "./" extension_dir = "C:\PHP\ext" エクステンションが置いてあるディレクトリを表します
    ;extension=php_mbstring.dll extension=php_mbstring.dll mbstring エクステンションを有効にします
    ;mbstring.language = Japanese mbstring.language = Japanese mbstring エクステンションの言語を表します
    ;mbstring.detect_order = auto mbstring.detect_order = auto mbstring エクステンションのエンコーディング検出方法を表します
    ;mbstring.internal_encoding = EUC-JP mbstring.internal_encoding = EUC-JP mbstring エクステンションの内部エンコーディングを表します

    php.ini に以下の行を追加します。

    備考
    extension = php_pdo.dll PDO エクステンションを有効にします
    extension = php_pdo_mysql.dll MySQL 用の PDO ドライバを有効にします

    補足

    • デバッグ時の問題を判り易くする為の設定です。運用時には Off にする事が強く推奨されています。
    • php.ini の雛形。php-recommanded.ini は推奨される設定であり、php-dest.ini は過去の PHP との互換性に重点を置いた物です。
    • これらのファイルが extension_dir で示したディレクトリにない場合、 PECL から別途入手する必要があります。
  3. PHP パッケージ内の php5ts.dll を、OS のシステム フォルダにコピーします。

    OS システム フォルダ
    (OS が C ドライブにインストールされている場合)

    Microsoft® Windows® XP

    C:\WINDOWS\system32
    Microsoft® Windows® 2000
    Microsoft® Windows® NT 4.0
    C:\WinNT\system32
    Microsoft® Windows® Me
    Microsoft® Windows® 98SE
    Microsoft® Windows® 98
    Microsoft® Windows® 95
    C:\WINDOWS\system
  4. Apache 2 の設定を行います。
    http.conf を開き、以下の文字列を追加します。

    LoadModule php5_module "C:\PHP\php5apache2.dll"
    <IfModule mod_php5.c>
    AddType application/x-httpd-php .php
    PHPIniDir "C:\PHP"
    </IfModule>
  5. 設定が完了したら Apache を再起動します。
    同時に設定が正しく反映されているか確認をします。
    phpinfo.php ファイルをドキュメントルート可に作成し、以下の内容を記入します。
    <?php echo phpinfo(); ?>

    ブラウザからアクセスして PHP クレジット他が表示されていれば正常です。

続く...

このアーカイブについて

このページには、2005年11月以降に書かれたブログ記事のうちDBカテゴリに属しているものが含まれています。

次のアーカイブはDB: 2006年1月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

DB: 2005年11月: 月別アーカイブ

Powered by Movable Type 4.12