menu
書いてる野郎
orebike@gmail.com
主に PHP7 での操作方法。 PHP7系の環境であれば SQLite3 のモジュールはたいてい入っていると思われる。
SQLite は MySQL のようなほかの DBMS と異なり、ユーザーとかは存在しない。 そのデータベースのファイルにアクセスできるかどうかのみが権限となるなのでファイルが読める環境であれば何もいらない。
ファイルを指定すれば DB とつながる。
$db = new SQLite3("hoge.db");
テーブルというのは設計なので、そもそもPHPから動的に作る必要などないだろう。 何かの SQLite クライアントで作ればよい。
超単純にこんな感じになる。
$db = new SQLite3("hoge.db"); $sql = "SELECT * FROM hogehoge"; $res = $db->query($sql); $piyo_list = array(); while($row = $res->fetchArray()){ $piyo_list[] = $row; } var_dump($piyo_list)
query メソッドに SQL をブチこめばよい。レスポンスらしきなにかが戻ってくるので、 そこから fetchArray メソッドを使うことで、先頭から1レコードずつ取り出すことができる。 この1レコードは変形した連想配列になっていて、フィールド順の番号指定でも取り出せるし、フィールド名でも取り出せるようになっている。
SQLのパラメータとしてエスケープするにはこのメソッドを使えばよい
$a = SQLite3::escapeString($a);