-1

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

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

有什么帮助吗?

即使图像存在于服务器上,它仍然返回“否”

4

5 回答 5

0

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

i.e.: file_exists('/Users/test/Desktop/1.jpg');
于 2013-10-22T07:26:01.350 回答
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';
}
于 2013-10-22T07:26:04.493 回答
0

file_exists 用于本地文件而不是 url。

于 2013-10-22T07:26:07.773 回答
0

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

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

在这里检查这个答案。

于 2013-10-22T07:26:30.933 回答
0

file_exists 仅适用于访问本地文件..改为这样做...

$file = "file/pic/pages/13822542191645543571_400.jpg"; 
if(file_exists($file)) {
        echo "yes";
    }
    else {
        echo "no";
    }
于 2013-10-22T07:30:48.650 回答