kyo*_*kyo 14 php laravel laravel-5 laravel-5.1
目标:如果文件存在,请加载文件,否则加载default.png
.
我试过了
@if(file_exists(public_path().'/images/photos/account/{{Auth::user()->account_id}}.png'))
<img src="/images/photos/account/{{Auth::user()->account_id}}.png" alt="">
@else
<img src="/images/photos/account/default.png" alt="">
@endif
Run Code Online (Sandbox Code Playgroud)
结果
它保持加载我的默认图像,而我100%确定1002.png
存在.
如何正确检查该文件是否存在?
Lee*_*Lee 40
无论您在哪里,都可以尝试减少if
语句数量.例如,我会做以下事情:
// User Model
public function photo()
{
if (file_exists( public_path() . '/images/photos/account/' . $this->account_id . '.png')) {
return '/images/photos/account/' . $this->account_id .'.png';
} else {
return '/images/photos/account/default.png';
}
}
// Blade Template
<img src="{!! Auth::user()->photo() !!}" alt="">
Run Code Online (Sandbox Code Playgroud)
使您的模板更清洁,使用更少的代码.您也可以在此方法上编写单元测试来测试您的陈述:-)
小智 18
使用"File ::"检查文件是否存在于操作中,并将resut传递给视图
$result = File::exists($myfile);
Run Code Online (Sandbox Code Playgroud)
kyo*_*kyo 10
解
@if(file_exists( public_path().'/images/photos/account/'.Auth::user()->account_id.'.png' ))
<img src="/images/photos/account/{{Auth::user()->account_id}}.png" alt="">
@else
<img src="/images/photos/account/default.png" alt="">
@endif
Run Code Online (Sandbox Code Playgroud)
在Laravel 5.5中,可以exists
在存储外观上使用该方法:
https://laravel.com/docs/5.5/filesystem
$exists = Storage::disk('s3')->exists('file.jpg');
Run Code Online (Sandbox Code Playgroud)
您可以使用三元表达式:
$file = ($exists) ? Storage::disk('s3')->get('file.jpg') :
Storage::disk('s3')->get('default.jpg');
Run Code Online (Sandbox Code Playgroud)
小智 5
@if(file_exists('uploads/users-pic/'.auth()->user()->code_melli.'.jpg'))
<img src="{{'/uploads/users-pic/'.auth()->user()->code_melli.'.jpg'}}"
class="img-circle" alt="{{auth()->user()->name}}" width="60" height="60">
@else
<img src="/assets/images/user-4.png" width="60" height="60" class="img-circle img-corona" alt="user-pic" />
@endif
Run Code Online (Sandbox Code Playgroud)
正如您在上面的代码中看到的,当您想检查图像时,不要在第一个路径中使用“/”
@if(file_exists('uploads/users-pic/'.auth()->user()->code_melli.'.jpg'))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
64605 次 |
最近记录: |