PHPでテキストファイルを簡易データベースとして使用するTextDbクラス公開!はじめに
PHPでデータの保存や検索を行う場合、通常MySQLやPostgreSQL、SQLiteなどデータベース(以下データベースと呼びます)を使用しますが、簡単なデータシステムであれば、データベースを使用するにはデメリットも存在します。
第一に、データベースはSQLというPHPとは異なる言語体系を使用しますから、一つのファイルの中に複数言語が混在することになります。
もちろん、言語の混在は可読性やメンテナンス性の観点から好ましいものではありません。
第二に、データベースは単純に動作が重いです。
場合によっては、PHPでSQLを生成する関数を定義して、そこからクエリした上で、データベース側でさらにSQLを処理して・・・
なんてことになっているため、処理の無駄が多いのです。
当然データベースを使用することでセキュリティーは上がるわけですが、セキュリティーをそれほど必要としない部分についてはデータベースで複数言語を混在させ、重い処理をさせる必要はないです。
さて、そこで少し逆行的な雰囲気もありますが、テキストファイルの読み書きをデータベース操作と同じ感覚でデータベースの代替品として利用するクラスを作成しましたので公開します。(公開というよりは自分が使いやすいようにWEBにあげて備忘録するだけなんですが・・)
できることは、テーブルの作成、レコードの追加・更新・削除・検索、条件指定での一括更新・一括削除、テーブルの結合・・・などです。
トランザクションはできません。
でも、大きめのシステムを作ろうとしなければそんなに困りません。
なにより動作がサクサクです。
だいぶ前置きが長くなりましたので、次の記事にクラスのソースを載せます。