我有用户ID的图片(例如 img299 等)。此图片已放置在名为 images 的文件夹中。当用户登录时,我使用用户ID创建图像名称,如 img299 ( 299 是用户ID)。
创建图像名称后,我需要在 images 文件夹中检查此图像名称是否已存在。如果图像存在,我想显示该图像,如果不只是显示下划线。
所以,我尝试这样:
$filename = "img".$userID;
$filepath = "http://www.example.com/images/".$filename.".gif";
var_dump(getimagesize($filepath));//for testing
if(getimagesize($filepath)) {
echo "<img src = 'http://www.example.com/images/".$filename.".gif'>";
} else {
echo "____________________________";
}
如果图像存在,则上述代码有效。但问题是,如果图像文件夹下不存在图像, getimagesize 会像这样返回:
因此,结果为true,该行 echo&#34; http://www.example.com/images/"。$ filename。&#34; .gif&#39;&gt; ;&#34 ;; 是工作,图像无法正确显示。
这对我来说是个问题。如果图像不存在,我想只显示下划线。
所以,我也尝试使用 if(file_exists($ filepath)),即使图像存在,它也总是返回false。
如何检查图像是否存在。我将不胜感激任何建议。
答案 0 :(得分:1)
将PHP的file_exists与文件的本地路径一起使用,以检查它是否存在。即不要使用完整的URL(example.com / ...),而是使用文件系统相对于您正在执行的文件的路径(例如../images/filename.png
)。