2016-11-18 50 views
1

我正在为我的项目使用PHP Laravel框架并遇到问题。我需要的是找到具有特定用户名的所有用户。这是我的代码。如何循环模型从Where子句中查找?

 $keyword=$request['keywords']; 
     $users=User::where('userName',$keyword); 
     echo count($users); 
     echo '<br>'; 
     echo count($users->get()); 
     foreach ($users->get() as $res){ 
      echo "results"; 
     } 

这给出以下输出,

1 
0 

但不打印单词 “结果”。这里有什么问题,我如何循环访问用户对象来打印所有的用户。我正在使用Laravel 5.2

+1

'用户::在哪里( '用户名',$关键字) - >得到()'这将返回用户的总数。 –

+0

它返回0个用户。我已将你提到的陈述分为两部分并分别列印。 get()之后它变为0. – chamathabeysinghe

+0

get()返回确切的结果,这意味着查询不返回数据库行。 –

回答

1

您应该首先使用get()paginate()获取集合。

那你平时在访问集合:

$users = User::where('userName', $request['keywords'])->get(); 
echo $users->count(); 
foreach ($users as $user){ 
    echo $user->id; 
} 
+0

'foreach($ users-> get()as $ res){'他在foreach循环中做了这些 –