2016-11-18 2 views
1

Я использую рамки PHP Laravel для своего проекта и столкнулся с проблемой. Мне нужно найти всех пользователей с определенным именем пользователя. Вот мой код для этого.Как прокручивать модели Найти из Where 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

'User :: где ('имя_пользователя', $ ключевое слово) -> получить()' это будет возвращать общее число пользователей. –

+0

Он возвращает 0 пользователей. Я разбил сказанное вами заявление на две части и распечатываю счет отдельно. После get() он становится 0. – chamathabeysinghe

+0

'get()' возвращает точный результат, который означает, что запрос не возвращает строки db. –

ответ

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 –

 Смежные вопросы

  • Нет связанных вопросов^_^