检查网址是否存在于php [duplicate]

5gfr0r5j  于 2023-01-04  发布在  PHP
关注(0)|答案(7)|浏览(119)
    • 此问题在此处已有答案**:

How can one check to see if a remote file exists using PHP?(24个答案)
2天前关闭.

if (!(file_exists(http://example.com/images/thumbnail_1286954822.jpg))) {   
$filefound = '0';                         
}

为什么这行不通

falq053o

falq053o1#

if (!file_exists('http://example.com/images/thumbnail_1286954822.jpg')) {   
$filefound = '0';
}
cld4siwp

cld4siwp2#

1.函数需要字符串。

  1. file_exists()无法正确处理HTTP URL。
aydmsdu9

aydmsdu93#

    • file_exists**检查指定路径中是否存在文件。

语法:

file_exists ( string $filename )

如果filename指定的文件或目录存在,则返回TRUE;否则为FALSE

$filename = BASE_DIR."images/a/test.jpg";
if (file_exists($filename)){
    echo "File exist.";
}else{
    echo "File does not exist.";
}

另一种方法是使用getimagesize(),如果指定路径中没有文件/目录,它将返回0(零)。

if (@getimagesize($filename)) {...}
wh6knrhe

wh6knrhe4#

您也可以使用PHPget_headers()函数。
示例:

function check_file_exists_here($url){
   $result=get_headers($url);
   return stripos($result[0],"200 OK")?true:false; //check if $result[0] has 200 OK
}

if(check_file_exists_here("http://www.mywebsite.com/file.pdf"))
   echo "This file exists";
else
   echo "This file does not exist";
t3psigkw

t3psigkw5#

根据您对Haim的评论,这是您自己服务器上的文件吗?如果是,您需要使用文件系统路径,而不是url(例如file_exists( '/path/to/images/thumbnail.jpg' ))。

tmb3ates

tmb3ates6#

对我来说,file_exists()函数也不能正常工作。所以我得到了这个替代解决方案。希望这个能帮助一些人

$path = 'http://localhost/admin/public/upload/video_thumbnail/thumbnail_1564385519_0.png';

    if (@GetImageSize($path)) {
        echo 'File exits';
    } else {
        echo "File doesn't exits";
    }
4szc88ey

4szc88ey7#

检查以下代码

if ($user->image) {
        $filename = "images/" . $user->image;
        if (file_exists($filename)) {
            echo '<br />';
            echo "File exist.";
        } else {
            echo '<br />';
            echo "File does not exist.";
        }
    }

相关问题