やったこと

webサービスを作るときに考えたことを垂れ流します

PHPのデータベース操作ライブラリ「Idiorm」でSQLiteが楽々使えた

「Idiorm」っていうPHPライブラリでデータベースが楽々操作できるよ!

めんどくさいSQL構文ともこれでおさらばだよ!

以下使い方だよ!

①インストール
下記のgithubページでzipがダウンロードできるよ!
https://github.com/j4mie/idiorm

zipを解凍するといっぱいファイルが出てくるけど使うのは「idiorm.php」だけだよ!これをrequire_onceするだけで使えるようになるよ!


②使い方
使い方はコードを見た方が早いよ!こんな感じでサクッと使えるよ!ちなみにデータベースはSQLite3を使ったよ!

require_once("./idiorm.php");
ORM::configure('sqlite:データベースのパス');
ORM::configure('id_column', 'DBの主キーの名前');

$db = ORM::get_db();

//全レコード取得
$records = ORM::for_table('テーブル名')->find_many();
foreach($records as $record) {
  echo $record->id."\n";
  echo $record->name."\n";
  echo $record->age."\n";
}

//条件指定でレコードを取得
$records = ORM::for_table('テーブル名')->where('age', 17)->find_many();
foreach($records as $record) {
  echo $record->id."\n";
  echo $record->name."\n";
  echo $record->age."\n";
}

//一つだけレコードを取得, 一番idが若い奴が返却される
$record = ORM::for_table('テーブル名')->where('age', 17)->find_one();
  echo $record->id."\n";
  echo $record->name."\n";
  echo $record->age."\n";

//レコード数カウント
$num = ORM::for_table('テーブル名')->count();
echo $num."\n";

//レコード上書き
$records = ORM::for_table('テーブル名')->where('name', 'yui horie')->find_many();
foreach ($records as $record){
    $record->age = '17';
    $record->save();
}

//レコード追加(idはインクリメントされる)
$record = ORM::for_table('テーブル名')->create();
$record->name = 'yui horie';
$record->age = 17;
$record->save();

//レコード削除
$records = ORM::for_table('テーブル名')->where('name', 'yui horie')->where('age', 39)->find_many();
foreach ($records as $record) {
  $record->delete();
}


詳しい使い方は以下のページに書いてあるよ!英語だけどなんとなく雰囲気で読めてしまう優しいページだよ!
http://idiorm.readthedocs.org/en/latest/