【发布时间】:2012-10-25 08:34:50
【问题描述】:
我开始使用 Laravel 框架,但我在使用 fluent 查询生成器时遇到了问题。在 where 条件下,如果我使用原始值或 Input::get(),它会检索结果并正确执行,但是当我使用分配的变量时,它会显示“未定义的变量”错误。
$properties = Listing::where(function($query)
{
if (Input::has('property-type')) $query->where('property_type', '=',Input::get('property-type'));
})->get();
它可以正常工作,但如果我这样做了
$pt=Input::get('property-type');
$properties = Listing::where(function($query)
{
if ($pt!='') $query->where('property_type', '=',$pt);
})->get();
返回错误
Undefined variable: pt
如果我打印变量“$pt”,它包含值。
我只想使用变量值,因为我应该将这些值作为参数从控制器传递给模型,并在模型函数中构建查询。难道我做错了什么?在查询执行之前没有分配变量吗?请问,谁能帮我解决这个问题?
【问题讨论】: