[PHP-users 30859] SQLiteDatabasekクラスについて

yusuke ito ito.ysk @ gmail.com
2006年 12月 2日 (土) 17:44:44 JST


伊東です。

個人的にPHP5+SQLiteなアプリケーションを設計しています。
(環境としてはLinux+PHP5.2.0+SQLiteDatabaseクラスです)
$db = new SQLiteDatabase(〜); な使い方が気に入っております。

プレーンに必要な処理をガシガシ書いているうちに
以下のような処理の繰り返しが目立ってきました

・PEAR DBで言うところのgetOne()
$sql = "SELECT COUNT(*) FROM 〜";
$res = $db->query($sql);
if($res->fetchSingle() == 0){

・PEAR DBで言うところのgetRow()
$sql = "SELECT * FROM 〜 WHERE id=nnn";
if($rtn = $db->arrayQuery($sql, SQLITE_ASSOC, $err)){
	$row = $rtn[0];

ロジック全体をクラスとしてカプセル化しようと考えているのですが、
SQLiteDatabaseクラスを使うか、sqlite_*な関数を使うかで悩んでます。

実はSQLiteDatabaseクラスはsqlite_*な関数を使って実現しているんだよ!
という証拠が見つかれば迷わずsqlite_*を使うのですが
(その方がパフォーマンスがよいでしょうから)
PHP-5.2のソースツリーをgrepしても「SQLiteDatabase」という文字列を
見つけられずその辺どうやって実装しているのか、わかりませんでした。
(ベンチマークとれば?と言われるとアレですが、ソースから根拠を得たい)

私の探し方が根本的に間違っているんでしょうか。
SQLiteDatabaseクラスはソース中のどこでどのように定義されているのか、
どなたか解説いただけませんでしょうか…
#しょーもない質問でスミマセン


PHP-users メーリングリストの案内