Метод get
Метод get применяется к запросу Eloquent или Query Builder и возвращает коллекцию результатов. Этот метод выполняет запрос к базе данных и возвращает коллекцию моделей для Eloquent или массив стандартных объектов для Query Builder. Метод не принимает никаких параметров. Результат можно использовать в циклах или преобразовывать в массивы.
Синтаксис
<?php
Model::query()->get();
?>
Пример
Давайте получим все записи из таблицы статей:
<?php
use App\Models\Article;
$articles = Article::get();
foreach ($articles as $article) {
echo $article->title . "\n";
}
?>
Результат выполнения кода:
"article 1"
"article 2"
"article 3"
"article 4"
"article 5"
Пример
Давайте получим только опубликованные статьи с сортировкой по дате создания:
<?php
use App\Models\Article;
$res = Article::where('status', 'published')
->orderBy('created_at', 'desc')
->get();
foreach ($res as $article) {
echo $article->title . " - " . $article->created_at . "\n";
}
?>
Результат выполнения кода:
"article 3 - 2024-03-15 14:30:00"
"article 1 - 2024-03-10 10:15:00"
"article 2 - 2024-03-05 08:45:00"
Пример
Давайте получим статьи с количеством комментариев больше 5:
<?php
use App\Models\Article;
$res = Article::where('comments_count', '>', 5)->get();
foreach ($res as $article) {
echo $article->title . " - " . $article->comments_count . "\n";
}
?>
Результат выполнения кода:
"article 1 - 12"
"article 4 - 8"
Пример
Давайте используем метод get с условием и ограничением количества записей:
<?php
use App\Models\Article;
$res = Article::where('is_active', true)
->limit(3)
->get();
foreach ($res as $article) {
echo $article->title . "\n";
}
?>
Результат выполнения кода:
"article 1"
"article 2"
"article 3"