木曜日, 8月 28, 2008

PHPによるデータベースアクセス

PHPでは、PDOというクラスを使うと、MySQLなどデータベースへのアクセスが簡潔に記述できます。クエリ操作など、データベース関連の関数が抽象化されているので、データベースに非依存のコードを書くことができます。例外処理機能があるので、よりわかりやすいコードを書くことができます。

手順としては、クラスをインスタンス化し、メンバ関数を実行します。結果はオブジェクトとして返されるので、メンバ関数を使用すると順次値を引き出すことができます。返される値は、デフォルトで連想配列および数値を引数とする配列となります。



try
{
$dbh=new PDO('mysql:dbname='.$MYSQL_DATABASE.';host='.$MYSQL_HOST,$MYSQL_USER,$MYSQL_PASSWORD);
$dbh->query("SET NAMES UTF8");

$sql="select * from photos where data_no=".$data_no;
$photoSet=$dbh->query($sql);

if(!empty($photoSet))
{
while($row=$photoSet->fetch())
{
echo $row['filename'];
}
}
}
catch (PDOException $e)
{
echo $e->getMessage();
}
$dbh=null;



オートインクリメントで値を設定している場合には、
lastInsertId()
を使うとインデックス値を得ることができます。


$dbh->query($sql);
$data_no=$dbh->lastInsertId();

PHP: 定数を扱う

プロジェクトごとの定数を扱うクラス Config\Constants の紹介です。 <?php namespace Config; class Constants {     public const DB_USER = "linguist...