2010-08-13 105 views
0

我有一个图像url,但没有图像或图像名称已被重命名,所以我无法查看图像在这种情况下,我想显示一个默认的自定义图像。如何做到这一点图像显示问题

在此先感谢

+0

是您的服务器上的图像还是外部网址? – Serge 2010-08-13 05:22:13

+0

所以你有一个图像的网址,但那里没有图像?如果指定的图像src没有返回要显示的图像,则可以使用图像的错误事件。那么如果这个事件发生了,你可以将src更改为默认值。 – spinon 2010-08-13 05:22:26

回答

0

如果该文件位于你的服务器

<?php 
$filename = '/path/to/file.jpg'; 

if (!file_exists($filename)) { 
    $filename = '/path/to/default.jpg' 
} 
?> 

否则任何想法,你可以尝试使用GetImageSize

if(@GetImageSize($remoteImageURL)){ 
     //image exists! 
} 
+0

我很高兴能有这样一个愚蠢的拉默谁热链接到我的网站,并使用该代码。他们永远不会让这个页面显示 – 2010-08-13 05:35:51

+0

同意,但这不是问题的范围;) – Serge 2010-08-13 05:44:51

+0

无论如何,它将会消耗开销。为了性能优化,我希望你不是推荐使用单引号而不是双引号 – 2010-08-13 06:13:40

0

如果是相同的网站,您可以使用任何PHP文件系统功能来查看是否仍然存在图像文件。 is_readable()是我最喜欢的那个。
当然,不应该使用URL,而应该使用文件系统路径。

如果它只是其他网站的热门链接 - 忘记它。你无法检查它是否合理的价格。

0

如果图像是一个你的服务器ie。如果您知道图像文件的路径,您可以使用php功能file_exists

if (file_exists($imageFilePath)){ 
    $url = $imageUrl; 
} else { 
    $url = $customImageUrl; 
}