如果 laravel blade 中的变量值为空,如何显示默认值 url

How to show default url if variable value is empty in laravel blade

我知道对于普通变量,我可以使用 {{ $vid->shares ? : '0' }} 之类的东西来显示 Laravel 5.7 blade 文件中的默认信息。

现在我需要显示图像源,我正在这样做 <img src="{{ url($vid->thumb_file) }}"> 这工作正常,直到我遇到一个空值。

是否可以通过添加默认后备图像来避免这种情况 URL?或者 "if else" 只是更好的解决方案?

类似 {{ url($vid->thumb_file) ?: url('/images/video-thumbnail.png') }} 的东西不起作用。

你可以这样使用:

{{ isset($vid->thumb_file) ? $vid->thumb_file : url('/images/video-thumbnail.png') }}

<img src="{{ isset($vid->thumb_file) ? $vid->thumb_file : url('/images/video-thumbnail.png') }}" alt="" class="img-fluid">

您可以像下面这样使用:

<img src="{{ $vid->thumb_file ? url($vid->thumb_file) : url('/images/video-thumbnail.png') }}" alt="" class="img-fluid">

这与您在上面使用的三元运算符相同:{{ $vid->shares ?: '0' }}

您也可以在您的控制器中检查它,例如:

if (file_exists(public_path() . '/images/' . $vid->image)) {
    $img = $vid->image;
} else {
    $img = '/images/video-thumbnail.png';
} 

希望对您有所帮助!