Laravel: 无法显示 Blade 文件中的图像
Laravel: Can't Display Image In Blade File
我试图在 blade 中显示图像。但它无法加载图像,它显示else语句
的图像
<?php $user_image_path = 'images/user_images/' . $userDetails['image']; ?>
@if(!empty($userDetails['image']) && file_exists($user_image_path))
<img src=" {{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre">
@else
<img src="{{ asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre">
@endif
我还调试了获取图像的 if 语句上方的代码
<?php $product_image_path = 'images/user_images/' . $userDetails['image']; ?>
<?php
echo "<pre>";
print_r($user_image_path);
die;
?>
@if(!empty($userDetails['image']))
<img src="{{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre">
- 在inspector中查看图片的src。大多数时候它给了我们错误的路径而不是 public 目录。
- 其次,src里面有space。尝试删除 运行 那个。
- 如果asset函数没有给出public目录路径,在.env中添加ASSETS_URL到/public
是你的if条件的第二个条件不匹配。 file_exists 函数无法定位图像文件。您要么必须提供 file_exists 的完整路径,要么将其删除:
@if(!empty($userDetails['image']))
<img src="{{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre">
@else
<img src="{{ asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre">
@endif
尝试:
<img src="{{ !empty($userDetails['image']) ? asset('images/user_images/'.$userDetails['image']) : asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre">
从上面对你的问题的评论来看,你似乎正在加载没有扩展名的图像。添加图像扩展
<img src="{{ asset('images/user_images/'.$userDetails['image'].".png") }}" alt="">
或 .jpg
<img src="{{ asset('images/user_images/'.$userDetails['image']).".jpg" }}" alt="">
使用此代码:
<img src=" {{ !empty(asset('images/user_images/'.$userDetails['image'])) ? <img src="{{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre"> : <img src="{{ asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre"> }}" alt="Cinque Terre">
我试图在 blade 中显示图像。但它无法加载图像,它显示else语句
的图像 <?php $user_image_path = 'images/user_images/' . $userDetails['image']; ?>
@if(!empty($userDetails['image']) && file_exists($user_image_path))
<img src=" {{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre">
@else
<img src="{{ asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre">
@endif
我还调试了获取图像的 if 语句上方的代码
<?php $product_image_path = 'images/user_images/' . $userDetails['image']; ?>
<?php
echo "<pre>";
print_r($user_image_path);
die;
?>
@if(!empty($userDetails['image']))
<img src="{{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre">
- 在inspector中查看图片的src。大多数时候它给了我们错误的路径而不是 public 目录。
- 其次,src里面有space。尝试删除 运行 那个。
- 如果asset函数没有给出public目录路径,在.env中添加ASSETS_URL到/public
是你的if条件的第二个条件不匹配。 file_exists 函数无法定位图像文件。您要么必须提供 file_exists 的完整路径,要么将其删除:
@if(!empty($userDetails['image']))
<img src="{{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre">
@else
<img src="{{ asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre">
@endif
尝试:
<img src="{{ !empty($userDetails['image']) ? asset('images/user_images/'.$userDetails['image']) : asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre">
从上面对你的问题的评论来看,你似乎正在加载没有扩展名的图像。添加图像扩展
<img src="{{ asset('images/user_images/'.$userDetails['image'].".png") }}" alt="">
或 .jpg
<img src="{{ asset('images/user_images/'.$userDetails['image']).".jpg" }}" alt="">
使用此代码:
<img src=" {{ !empty(asset('images/user_images/'.$userDetails['image'])) ? <img src="{{ asset('images/user_images/'.$userDetails['image'])}}" alt="Cinque Terre"> : <img src="{{ asset('images/product_images/small/no_image.png') }}" alt="Cinque Terre"> }}" alt="Cinque Terre">