Обрабатывайте данные с помощью метода transform()
Элегантно модифицировать данные Laravel предлагает при помощи метода transform(). Этот хелпер позволяет выборочно преобразовывать данные и обрабатывая нулевые значения.
<?php
// Вместо
$displayName = $user->name ? ucwords($user->name) : 'Guest';
// Более элегантное решение
$displayName = transform($user->name, fn ($name) => ucwords($name), 'Guest');
// Базовое использование
$result = transform('hello world', fn ($text) => strtoupper($text));
// 'HELLO WORLD'
// Если значение null, вернется дефолтное значение
$result = transform(null, fn ($value) => $value * 2, 'default');
// 'default'
Функция transform()
принимает три параметра для обработки ваших данных:
Значение для преобразования
Функция обратного вызова для не нулевых значений
Дефолтное значение для нулевых случаев (не обязательный параметр)
Реальный пример
<?php
namespace App\Services;
class CacheService
{
public function getCacheTimeout()
{
return transform(
config('cache.timeout'),
fn ($timeout) => $timeout * 60,
3600
);
}
}