請考慮有時候更短!=更好,尤其是如果您將來返回到您的代碼。
我能想到的是使用object_get()
助手的最短:
{{ object_get(Auth::user(), 'firstname', 'Your name') }}
基本上是一樣的array_get()
,但使用對象:如果屬性不存在,你提供一個默認值3參數,則返回該值,否則您將獲得object-> property值。
我覺得默認值的使用是不是有據可查的,但如果你看看vendor/Laravel/Illuminate/Support/helpers.php
下,在線路771-787,你得到的函數定義:
function object_get($object, $key, $default = null)
{
if (is_null($key) || trim($key) == '') return $object;
foreach (explode('.', $key) as $segment)
{
if (! is_object($object) || ! isset($object->{$segment}))
{
return value($default);
}
$object = $object->{$segment};
}
return $object;
}
同意。謝謝。我會試一試。 – PeterKA
+1感謝您的功能定義。很棒! – PeterKA