我将如何修改它以使其返回 1 行对象,而不是数组?
$slot = Model_Slots::find(array(
'where' => array(
array('datetime', '=', date('Y-m-d H:i:s', $s)),
array('club', '=', $club->id),
),
));
(目前的解决方案是跟随它...... $slot = ($slot[0]) ?: false;
,呃!)
我将如何修改它以使其返回 1 行对象,而不是数组?
$slot = Model_Slots::find(array(
'where' => array(
array('datetime', '=', date('Y-m-d H:i:s', $s)),
array('club', '=', $club->id),
),
));
(目前的解决方案是跟随它...... $slot = ($slot[0]) ?: false;
,呃!)
这可以使用get_one()
- http://docs.fuelphp.com/packages/orm/crud.html#/find_chaining
$slot = Model_Slots::find(array(
'where' => array(
array('datetime', '=', date('Y-m-d H:i:s', $s)),
array('club', '=', $club->id),
),
))->get_one();
find_by_pk() 和 find_one_by() 都返回单个模型对象,就像 ORM get_one() 等效项一样。
其他 find 方法返回一个结果数组。最简单的方法是添加一个 LIMIT 1,然后使用
$result and $result = reset($result);
获取数组的第一个元素。