PHP:如何检查镜像文件是否存在?

2022-08-30 07:26:05

我需要查看我的cdn上是否存在特定图像。

我尝试了以下方法,但它不起作用:

if (file_exists(http://www.example.com/images/$filename)) {
    echo "The file exists";
} else {
    echo "The file does not exist";
}

即使图像存在或不存在,它总是显示“文件存在”。我不知道为什么它不起作用...


答案 1

您至少需要将文件名括在引号中(作为字符串):

if (file_exists('http://www.mydomain.com/images/'.$filename)) {
 … }

此外,请确保已正确验证。然后,只有在PHP配置中激活allow_url_fopen时,它才会起作用。$filename


答案 2
if (file_exists('http://www.mydomain.com/images/'.$filename)) {}

这对我不起作用。我这样做的方式是使用getimagesize。

$src = 'http://www.mydomain.com/images/'.$filename;

if (@getimagesize($src)) {

请注意,“@”意味着如果图像不存在(在这种情况下,函数通常会抛出错误:),它将返回false。getimagesize(http://www.mydomain.com/images/filename.png) [function.getimagesize]: failed


推荐