【Laravel】Laravel5.7のヘルパーを一気に勉強(21) – その他その8




Laravel5.7のその他に関するヘルパーその8です。

throw_unless()

第一引数がfalseの場合、第二引数の例外を投げます。

throw_unless(Auth::check(), Exception::class);

trait_uses_recursive()

指定したトレイトが利用しているトレイト一覧を返します。

print_r(trait_uses_recursive(\Illuminate\Notifications\Notifiable::class));
/*
Array
(
    [Illuminate\Notifications\HasDatabaseNotifications] => Illuminate\Notifications\HasDatabaseNotifications
    [Illuminate\Notifications\RoutesNotifications] => Illuminate\Notifications\RoutesNotifications
)
*/

transform()

第一引数がblankでない場合、第二引数のクロージャを実行します。blankの場合、第三引数が指定されていればその値もしくはクロージャを実行します。
blank()について

$result = transform(1, function() {
    return 'aaaaa';
});
// aaaa

$result = transform(null, function() {
    return '';
}, 'default_value');
// default_value

$result = transform(null, function() {
    return 1111;
}, function() {
    return 'from default closure';
});
// from default closure

validator()

バリデーターインスタンスを生成します。

$validator = validator($data, $rules, $errorMessages);