Метод oldest
Метод oldest применяется к запросу Eloquent
или Query Builder и сортирует записи по возрастанию.
По умолчанию сортировка выполняется по полю created_at.
В качестве необязательного параметра можно передать имя
колонки, по которой следует выполнить сортировку.
Метод является противоположностью latest.
Синтаксис
<?php
Model::oldest($column);
?>
Пример
Давайте получим все статьи и отсортируем их по возрастанию
поля created_at:
<?php
use AppModelsArticle;
$articles = Article::oldest()->get();
foreach ($articles as $article) {
echo $article->title . ' - ' . $article->created_at;
}
?>
Результат выполнения кода:
"First article - 2024-01-01 10:00:00"
"Second article - 2024-01-15 14:30:00"
"Third article - 2024-02-01 09:15:00"
Пример
Отсортируем пользователей по возрастанию поля age,
передав имя колонки в метод oldest:
<?php
use AppModelsUser;
$users = User::oldest('age')->get();
foreach ($users as $user) {
echo $user->name . ' - ' . $user->age;
}
?>
Результат выполнения кода:
"John - 18"
"Mike - 25"
"Alice - 32"
Пример
Комбинируем метод oldest с другими методами
для получения самых старых записей с условием:
<?php
use AppModelsArticle;
$articles = Article::where('status', 'published')
->oldest()
->take(5)
->get();
foreach ($articles as $article) {
echo $article->title . ' - ' . $article->created_at;
}
?>
Результат выполнения кода:
"Article 1 - 2024-01-01 10:00:00"
"Article 2 - 2024-01-02 11:00:00"
"Article 3 - 2024-01-03 12:00:00"
"Article 4 - 2024-01-04 13:00:00"
"Article 5 - 2024-01-05 14:00:00"
Смотрите также
-
метод
latest,
который сортирует записи по убыванию -
метод
orderBy,
который выполняет произвольную сортировку -
метод
orderByDesc,
который сортирует по убыванию -
метод
inRandomOrder,
который сортирует записи в случайном порядке