Php 文件_不在Laravel 5.4中工作

Php 文件_不在Laravel 5.4中工作,php,laravel,Php,Laravel,我有一个问题,不幸的是,给我的答案不起作用 我希望在找不到图片时,他打印占位符图像 Models: public function cover() { if(file_exists('/upload/cover/'.$this->immagine)) { return url('/upload/cover/'.$this->immagine); } else { return url(

我有一个问题,不幸的是,给我的答案不起作用

我希望在找不到图片时,他打印占位符图像

Models:
public function cover()
      {
         if(file_exists('/upload/cover/'.$this->immagine)) {
             return url('/upload/cover/'.$this->immagine);
         } else {
             return url('/upload/cover/no-cover.png');
         }
      }

Blade:
            <img src="{!! $info_giochi->cover() !!}"
            <img src="{{ url('upload/cover/'.$info_giochi->immagine) }}">
正如你所看到的,在刀片中我放置了两次src,这是为了验证我所指的图像是否真的存在,事实上存在

为什么在我的第一个img src中,会出现no-cover.png而不是图像?

修复了以下问题:

public function cover()
  {
     if(file_exists(public_path('/upload/cover/'.$this->immagine))) {
         return '/upload/cover/'.$this->immagine;
     } else {
         return '/upload/cover/no-cover.png';
     }
  }

为此,您应该使用存储门面,它将以更宽的方式

use \Illuminate\Support\Facades\Storage;

Storage::disk('public')->exists('/upload/cover/' . $this->immagine);

请参阅

为什么不使用公共路径?非常感谢,我发现了我的错误…file\u exists使用文件系统,因此/upload字面上是指服务器根路径中的上载目录,而不是web目录。