如何使用FuelPHP中的单个ORM查询结果?

时间:2011-08-17 14:28:53

标签: php orm fuelphp

我有一个返回单个结果的查询,我想知道是否有办法访问该结果的属性而不必循环遍历它,因为我将其限制为单个结果。

这是我的问题:

$user = Model_User::find()
    ->where('email_address', Input::post('email_address'))
    ->where('password', Input::post('password'))
    ->limit(1);

我发现访问结果的唯一方法是在get()上运行$user方法并循环显示结果,但我认为我遗漏了一些内容并且有一种更简单的方法将$user作为我可以使用的单个对象返回,因为我将其限制为单个结果。

最有效的方法是什么?

3 个答案:

答案 0 :(得分:7)

你试过吗

$user->get_one()

答案 1 :(得分:2)

您也可以

$user = Model_User::find_by_email_address_and_password(Input::post('email_address'), Input::post('password'));

度过愉快的一天:)

答案 2 :(得分:0)

Uku Loskit问你正确的语法。 如果要始终检索单个结果,可以合并代码:

$user = Model_User::find()
    ->where('email_address', Input::post('email_address'))
    ->where('password', Input::post('password'))
    ->get_one();

给你的建议:小心使用直接输入:: post('var_name'),最好在保存变量之前使用验证。 另一种方法是将框架设置为对每个$ _GET和$ _POST变量执行某些操作,例如htmlentities()。