如何在$ result中搜索特定值?
public static function getUserLocked() {
$result=DB::table('users')->where('status', 'locked')->get();
return $result;
}
答案 0 :(得分:0)
$result = DB::table('users')
->where('name', 'LIKE', '%'.$search_value.'%')
->where('status', 'locked')
->get();
答案 1 :(得分:0)
这样的事情可以解决问题:
$result = DB::table('users')
->where('column', 'LIKE', '%'.$search_value.'%')
->where('status', 'locked')
->get();
列是您要搜索的表用户的列,$search_value
将是要在该列中搜索的给定输入字符串。
因此,如果您正在寻找包含测试的名称,它将如下所示:
$search_value = "test";
$result = DB::table('users')
->where('name', 'LIKE', '%'.$search_value.'%')
->where('status', 'locked')
->get();
答案 2 :(得分:0)
如果要搜索返回的集合,可以使用eloquent集合过滤器方法。见https://laravel.com/docs/5.5/collections#method-filter
例如:
$searchResults = $result->filter(function($r)
{
return $r->variablename == value; //replace variablenae & value with your own
});
}
答案 3 :(得分:0)
我建议jarektkaczyk/eloquence
包搜索,我确定它比它可以免费使用。
答案 4 :(得分:0)
如果您要搜索包含的值,则只需添加%
,否则请删除%
。检查此代码:
public static function getUserLocked() {
$result=DB::table('users')->where('status', 'LIKE', '%locked%')->get();
return $result;
}
已锁定的所有内容'将选择单词。
答案 5 :(得分:0)
您可以使用result[index]->field_name
或使用->toarray()
将其转换为数组,并将其用作2D数组(result[index]["field_name"])