当尝试显示地址不存在的图像时,您将看到默认浏览器“无图像”徽章。
如何将其更改为默认的“no-image.png”占位符?
echo "<img src='http://www.google.com/trolol.png'>"; //for example
您可以使用该onerror
属性,例如:
<img src="" onerror="this.src = 'no-image.png';" alt="" />
<img src='http://www.google.com/trolol.png' onerror="this.src='http://jsfiddle.net/img/logo.png'">
示例http://jsfiddle.net/UPdZh/1/
如果在加载外部文件(例如文档或图像)时发生错误,则会触发 onerror 事件。
句法
<element onerror="SomeJavaScriptCode">
<?php
$filename = 'http://www.google.com/trolol.png';
if (file_exists($filename)) {
echo "<img src='".$filename."'>";
} else {
echo "<img src='no-image.png'>";
}
?>
试试这个
<?php
$filename = 'http://www.google.com/trolol.png';
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
?>
正如您要求的 PHP 解决方案:
if (file_exists($filename)) {
echo "i_exist.jpg";
} else {
echo "fallback.jpg";
}
重要提示:仅适用于本地文件,不适用于远程文件!感谢 Szymon 的评论!