file_exists返回错误的值

时间:2013-10-22 07:23:04

标签: php http

我有以下代码,但它返回错误的值

if(file_exists("https://strutmymutt.com/file/pic/pages/13822542191645543571_400.jpg"))
    {
        echo "yes";
    }
    else
    {
        echo "no";
    }

对此有何帮助?

甚至图像存在于服务器上,仍然返回“否”

5 个答案:

答案 0 :(得分:0)

您需要提供文件路径以检查文件是否存在。不是网址。看看这里:http://php.net/file_exists

i.e.: file_exists('/Users/test/Desktop/1.jpg');

答案 1 :(得分:0)

根据PHP手册,file_exists检查文件是否存在给定文件或目录的路径。

这意味着您无法提供要检查的URL,而是提供本地文件系统上的绝对或相对文件路径。如果您希望检查给定URL的文件,该页面的注释中会有一些内容。以下是相关代码:

$file = 'https://strutmymutt.com/file/pic/pages/13822542191645543571_400.jpg';
$file_headers = @get_headers($file);
if($file_headers[0] === 'HTTP/1.1 404 Not Found') {
    echo 'no';
} else {
    echo 'yes';
}

答案 2 :(得分:0)

file_exists用于本地文件,而不是网址。

答案 3 :(得分:0)

file_exists仅检查文件是否存在本地

您需要使用一个函数来检查服务器的响应,以检查该图像是否存在:

Check this answer here.

答案 4 :(得分:0)

file_exists仅用于访问本地文件。请这样做......

$file = "file/pic/pages/13822542191645543571_400.jpg"; 
if(file_exists($file)) {
        echo "yes";
    }
    else {
        echo "no";
    }