環境設定その2

今日見たら修正版インストーラーがアップされてた。なんてこったい。
http://www.php.net/downloads.php#v5
一度環境を戻し、インストーラでインストールし直す。キレイに起動。




インストーラ経由で作成すると自動的にphp.iniが作られる。
zipでつくるやつよりシンプルになった感じ。
mysqlを使いたいので、mysql関連でわかるところだけ設定する。ポートとか、ユーザー名とか。
(↑必要なかったかも。ソケットは未設定)




PDOを動かしてみたら動かない。
よくよく見てみるとdllがない。
ので、zip版をダウンロードし、extディレクトリごとコピー。
php.iniに以下の記述を追記。

extension=.\ext\php_pdo.dll
extension=.\ext\php_pdo_firebird.dll
extension=.\ext\php_pdo_mysql.dll
extension=.\ext\php_pdo_oci.dll
extension=.\ext\php_pdo_oci8.dll
extension=.\ext\php_pdo_odbc.dll
extension=.\ext\php_pdo_pgsql.dll
extension=.\ext\php_pdo_sqlite.dll

phpinfoを起動したら、pdoを認識してた。
以下のソースでDB接続を確認。SQLは適当。

<?php
try {
    $pdo = new PDO("mysql:host=localhost; dbname=phptest","root", "root");
    $stmt = $pdo->query("SELECT * FROM hoge");

    while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
        echo implode(", ", $row) . PHP_EOL;
    }
} catch (PDOException $e){
    var_dump($e->getMessage());
}
$pdo = null;
 ?>