Версия Laravel 10.47, выпущенная в неделю, привнесла множество улучшений и нововведений, включая новые методы whereAll()
и whereAny()
для построителя запросов, поддержку флагов параметров сортировки в методе sortByMany()
для коллекций, и возможность установить свойство $failOnTimeout
для заданий очереди. Эти изменения делают Laravel еще более мощным и гибким инструментом для разработки веб-приложений.
Новые методы whereAll()
и whereAny()
Эти методы позволяют выполнять поиск по нескольким столбцам с использованием логики AND
или OR
. Это упрощает написание запросов, когда необходимо проверить, соответствует ли значение одного или нескольких столбцов определенным критериям.
Пример использования whereAny()
:
User::whereAny(
[
'first_name',
'last_name',
'email',
'phone'
],
'LIKE',
"%$search%"
);
Пример использования whereAll()
:
User::whereAll([
'first_name',
'last_name',
'email',
], 'LIKE', "%$search%");
Поддержка флагов параметров сортировки в sortByMany()
Теперь можно передавать в метод sortBy()
коллекции несколько параметров сортировки, используя флаги сортировки PHP. Это упрощает сортировку данных по нескольким критериям.
Пример использования:
$this->campaigns = $campaigns
->with('folder', 'campaignCategory')
->get()
->sortBy(['folder.name', 'campaignCategory.name', 'name'], SORT_NATURAL | SORT_FLAG_CASE);
Установка $failOnTimeout
для прослушивателей очереди
Свойство $failOnTimeout
позволяет указать, должно ли задание завершиться неудачей в случае превышения времени ожидания. Это полезно для управления поведением заданий в очереди.
Пример использования:
class UpdateSearchIndex implements ShouldQueue
{
public $failOnTimeout = false;
}
Заключение
Версия Laravel 10.47 представляет собой значительное обновление, добавляющее новые возможности и улучшения, которые делают разработку более эффективной и удобной. Эти изменения, включая новые методы построителя запросов и поддержку флагов параметров сортировки, делают Laravel еще более мощным инструментом для разработчиков.
0 комментариев