嘿伙计我有这段代码,如果src=""
为空,我正试图显示图片。
我正在使用!empty
尝试显示我的占位符图片,如您所见:
<img src="'.
(!empty( $cardata["PictureRefs"]))
? (explode(',', $cardata["PictureRefs"])[0])
: "db-content/theme/media/img/no-image.jpg" . '" data-src="'.
(explode(',', $cardata["PictureRefs"])[0]) .'" alt="'.$cardata["Variant"].'"/>
<img class="ms-thumb" src="'.
(!empty( $cardata["PictureRefs"]))
? (explode(',', $cardata["PictureRefs"])[0])
: "db-content/theme/media/img/no-image.jpg" .'" alt="'.$cardata["Variant"].'" />
出于某些原因,这不能在我的页面上工作,它只会破坏页面。
知道我可能会出错吗?我只剩下PDO从显示在页面上的文本中的数据库获取的外部URL。
CODE:
<?php $src = "db-content/theme/media/img/no-image.jpg";
if(!empty( $cardata["PictureRefs"])){
$src = explode(',', $cardata["PictureRefs"])[0];
}
$dataSrc = explode(',', $cardata["PictureRefs"])[0]; ?>
<?php echo '
<div class="ms-slide">
<img src="'.$src.'" data-src="'.$dataSrc.'" alt="'.$cardata["Variant"].'"/>
<img class="ms-thumb" src="'.(explode(',', $cardata["PictureRefs"])[0]).'" alt="'.$cardata["Variant"].'" />
</div>' ?>
它只显示它首先尝试接收的图像的404。
答案 0 :(得分:0)
虽然我不知道出了什么问题,但我重构了第一张图片的代码,以便更容易阅读并帮助其他人理解:
$src = "db-content/theme/media/img/no-image.jpg";
if(!empty( $cardata["PictureRefs"])){
$src = explode(',', $cardata["PictureRefs"])[0];
}
$dataSrc = explode(',', $cardata["PictureRefs"])[0];
echo '<img src="'.$src.'" data-src="'.$dataSrc.'" alt="'.$cardata["Variant"].'"/>';
您使用的是PHP 5.5或更高版本吗?以这种方式进行数组解除引用(来自爆炸函数的结果)需要PHP 5.5或更高版本。
查看结果页面的来源并发布该页面可能很有用。