hello foo bar Saba note | idiorm.phpがなかなかいい

idiorm.phpがなかなかいい

2016.11.10 (木)

github.com/j4mie/idiorm
http://idiorm.readthedocs.io/en/latest/

使い方

呼ぶ

require_once 'idiorm.php';

configみたいなの

ORM::configure('mysql:host=localhost;dbname=my_database');
ORM::configure('username', 'database_user');
ORM::configure('password', 'top_secret');

select

whereで普通にselectするみたいなのは、こんな感じで書きます。find_oneで1レコード取得。

$user = ORM::for_table('sample_table')
    ->where_equal('fname', 'osamuya')
    ->find_one();

上記の例でいうところのfnameカラムをすべて取得したい場合は、

$user = ORM::for_table('sample_table')
  ->select('fname')
  ->find_many();

こんな感じでfnameの値が全部取得できます。
複数のカラムの値を取得したいときは配列でカラム名を渡します。この配列で渡すっていうのが、便利なんだか便利じゃないんだかよくわかりません。

$user = ORM::for_table('sample_table')
  ->select(array('fname','lname'))
  ->find_many();

select_manyとチェーンでやる方法もあります。

$user = ORM::for_table('sample_table')
  ->select_many('fname','lname')
  ->find_many();
$user = ORM::for_table('sample_table')
  ->select('fname')
  ->select('lname')
  ->find_many();

値の取得の方法は、$userに配列で入ってきます。配列で入ってきてオブジェクトなのでPHPっぽいなぁと。

$user[0]->fname;

こんな感じでとれます。

Document

参考: PHPの薄いDBライブラリ「Idiorm」を使ってみた