PEAR PEAR とは、PHP で使用できる便利ライブラリ群です。主に、DB のアクセスを MySQL に限定し たくないときに使うことになりますほかにもいろいろできるみたいですが、DBアクセスでの PEAR 使用を説明していきます。 PEAR のインストール PHP をインストールしたときに PEAR 自身はインストールされていない状態です。PEAR を有効 にするには、PHP インストールディレクトリの「go-pear.bat」を DOS プロンプトにて実行してく ださい。勝手に展開されて「PEAR/pear」ディレクトリに関連ファイルが展開されます。 上記作業が終了後、php.ini ファイル内の「include_path」に PEAR のパスが追加されているか確認 してください。Smarty も動くようにしているとすると、以下のようになっています。 include_path=".;C:¥Program ¥Smarty" Files¥php-4.3.10 -Win32 ¥PEAR¥pear;C:¥Program Files¥php-4.3.10 -Win32 PEAR を使用した DB 接続 <?php require_once("DB.php"); $dbUser $dbPass $dbHost $dbName = = = = // PEAR の DB クラスを参照 "user1"; "hoehoe"; "localhost"; "testDB"; $db = DB::connect("mysql://$dbUser:$dbPass@$dbHost/$dbName"); if(DB::isError($db)) { print("db connect error!<br>"); exit(0); } $result = $db->query("select * from testtbl"); if($result) { while($row = $result->fetchRow()) { $cou = count($row); for($i = 0; $i < $cou; $i++) { print($row[$i]." "); } print("<br>¥n"); } ?> $db->disconnect(); } 「require_once("DB.php");」にて、PEAR のデータベース接続クラスを参照できるようにします。 DB::connect でデータベースの接続を行います。はじめの「mysql」を変えることで他のDBにも拡 張しやすいのが分かるかと思います。PEAR を使わない場合、 「mysql_connect」 「mysql_select_db」 関数などを使用していましたので簡略化されていて見やすいですね。 $db = DB::connect("mysql://$dbUser:$dbPass@$dbHost/$dbName"); $dbUser にデータベースにアクセスするユーザ名、 $dbPass にパスワード、$dbHost にホスト名(サー バから見たときのローカルだと 'localhost')、$dbName に使用するデータベース名、を入れておきま 1 す。成 功 す る と、$db に デ ー タ ベ ー ス に ア ク セ ス す る た め の オ ブ ジ ェ ク ト が 返 さ れ ま す。 「DB::isError($db)」で接続が正常に行われていない状態を検出できます。 「$result = $db->query("select * from testtbl");」でテーブル「testtbl」の select を行っています。「$row = $result->fetchRow()」にて1行分のレコード情報を取り出します。手順は、PEAR を使用しないと きと変わりませんね。 使い終わったら「$db->disconnect()」で接続を閉じます。 SQL 文での insert/update/delete 処理 select 以外でも「$db->query」でデータベースを制御することができます。 $sql = "insert into testtbl set id=5,name='hoe'"; $db->query($sql); $sql = "delete from testtbl where id=10"; $db->query($sql); $sql = "update testtbl set name='hoe' where id=10"; $db->query($sql); 2
© Copyright 2024 Paperzz