FuelPHPのORMでwhere句にメソッドチェーンを使用する方法
FuelPHP の ORM を使い、次のような where 句を持つ SQL文で DB を参照することを考えます。
1 |
select * from patients where (id=1 and name='yamada') and (id=2 or name='tanaka'); |
->
でつなげて記述できます。
1 2 3 4 5 6 7 8 9 10 |
$query = Model_Patient::query() ->where_open() ->where('id', 1) ->and_where('name', 'yamada') ->where_close() ->and_where_open() ->where('id', 2) ->or_where('name', 'tanaka') ->and_where_close() ->get(); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
$query = Model_Patient::query() ->where('id', 1); $query = $query ->and_where_open() ->where('id', 2) ->and_where('name', 'yamada') ->and_where_close(); $query = $query ->and_where_open() ->where('id', 3) ->or_where('name', 'tanaka') ->and_where_close(); $query->get(); |