Laravel使用where方法返回null值(如果传递了变量)

时间:2014-07-29 05:45:19

标签: php variables laravel where

我正在尝试在laravel查询中使用where方法。我有一个包含两个值的字符串(以逗号分隔)。我需要搜索逗号之后的值。所以我使用explode php函数来创建一个数组。所以我得到一个包含两个键值对的数组。我想使用第二个值来搜索数据库。所以我将第二个值存储在变量中,然后在where方法中传递该变量。但它正在返回空白集合对象

这是代码

$vehicles_name_trim_ar = explode(',', Input::get('vehicles_name_trim'));

print_r of $vehicles_name_trim_ar is
    Array
    (
        [0] => A3
        [1] =>  2.0T Premium Automatic
    )


//storing both values in seperate variable
$model_name = $vehicles_name_trim_ar[0];
$model_trim = $vehicles_name_trim_ar[1];

$model = Model::where('model_trim', $model_trim)->get();

它返回空白结果。但是,如果我证明了静态值,它会返回结果

$model = Model::where('model_trim', "2.0T Premium Automatic")->get();

我做错了什么?

1 个答案:

答案 0 :(得分:1)

第二个值的开头有空格。试试这个:

$model_name = trim($vehicles_name_trim_ar[0]);
$model_trim = trim($vehicles_name_trim_ar[1]);