1.optional()
允許你來獲取物件的屬性或者呼叫方法。如果該物件為 null,那麼屬性或者方法也會返回 null 而不是引起一個錯誤
// User 1 exists, with account
$user1 = User::find(1);
$accountId = $user1->account->id; // 123
// User 2 exists, without account
$user2 = User::find(2);
$accountId = $user2->account->id; // PHP Error: Trying to get property of non-object
// Fix without optional()
$accountId = $user2->account ? $user2->account->id : null; // null
$accountId = $user2->account->id ?? null; // null
// Fix with optional()
$accountId = optional($user2->account)->id; // null
2.replicate()
使用 replicate () 克隆一個模型。它將複製一個模型的副本到一個新的、不存在的例項中。
$user = App\User::find(1);
$newUser = $user->replicate();
$newUser->save();
3.blank()
判斷給定的值是否為空,與之相反的函式為lled()`
blank('');
blank(' ');
blank(null);
blank(collect());
// true
blank(0);
blank(true);
blank(false);
blank(['']);
empty(collect());//這裡與blank(collect())結果相反
// false
4.filled()
判斷給定的值是否不為「空」
filled(0);
filled(true);
filled(false);
// true
filled('');
filled(' ');
filled(null);
filled(collect());
// false
5.pluck
從陣列中檢索給定鍵的所有值
$parents = [
['parent' => ['id' => 1, 'name' => 'James']],
['parent' => ['id' => 8, 'name' => 'Lisa']],
];
Arr::pluck($parents, 'parent.name'); // ['James', 'Lisa']
本作品採用《CC 協議》,轉載必須註明作者和本文連結