PHP マニュアル
前のページ |  | 次のページ

# sqlite_popen

(PHP 5)

sqlite_popen -- SQLiteデータベースへの持続的ハンドルをオープンする。存在しない場合 には、データベースを作成する

## 説明

resource sqlite_popen ( string filename [, int mode [, string &errmessage]])

この関数はsqlite_open()と同じように動作しますが、 PHPの持続的リソース機能を使用するところが異なります。 パラメータの意味に関する詳細については、マニュアルの sqlite_open() を参照して下さい。

sqlite_popen() は、まず、持続的ハンドルが指定し たfilenameに関してすでにオープンされているか どうかを調べます。みつかった場合には、スクリプトのそのハンドルを返 し、それ以外は、データベースのハンドルを新規にオープンします。

この手法の利点は、持続性のあるWebサーバ SAPI(通常のCGIまたはCLI以外 の全てのSAPI)により処理される各ページについてデータベースやインデッ クススキーマを再読み込みする性能上のコストを払うことがないことです。

> 注意: 持続的ハンドルを使用している時にデータベースが(crontab等の)バック グラウンドプロセスにより更新され、このプロセスが上書きすることによ り(消去して、再構築するか、カレントのバージョンを置換するために更 新後のバージョンを移動)データベースを再生成する場合、 古いバージョンのデータベースに関する持続的ハンドルが再利用されると いった予測できない動作を引き起こす可能性があります。

> この問題を回避するために、バックグラウンドプロセスが同じデータベー スファイルをオープンするようにし、更新をトランザクションで行うよう にして下さい。

sqlite_popen(), sqlite_close(), sqlite_query()も参照して下さい。

前のページ | ホーム | 次のページ
sqlite_open | 上に戻る | sqlite_query