php中,如果我们想判断文件是否存在,可以使用函数file_exists(),该函数只需要一个文件名参数即可。
// Returns true if the file exists
file_exists( $filename );
此函数不仅对可以检查文件是否存在,也可以用来检测目录是否存在,你可以向该函数传递一个文件名或者目录名,如果这个目录或文件存在,file_exists()函数将返回true。
<?php
$filename = \'/path/to/foo.txt\';
/* http://www.manongjc.com/article/1420.html */
if (file_exists($filename)) {
echo \"The file $filename exists\";
} else {
echo \"The file $filename does not exist\";
}
?>
但是file_exists函数也有一个缺陷,有人曾试图使用该函数检查一个一个远程文件是否存在(使用URL)。但是,如果你尝试搜索文件使用一个URL此功能将无法正常工作,该函数将始终返回false。
如果你想检查远程URL,你需要做一个HTTP请求并检查一下HTTP头状态信息。
get_headers()函数检查远程文件是否存在
为了得到一个远程文件的头信息,那么你可以使用PHP函数get_headers() 。这需要你传入URL参数,它会以数组的形式返回头信息。该数组的第一个键是我们需要的值(HTTP报头的状态)。如果该文件存在的状态会返回一个200的状态码,如果远程文件不存在,那么状态码就会返回一个404错误。
这意味着我们可以使用get_headers()函数来检查远程问价是否存在。
$file_headers = @get_headers($url);
if($file_headers[0] == \'HTTP/1.0 404 Not Found\')
{
$file_exists = false;
} else {
$file_exists = true;
} 继续阅读与本文标签相同的文章
上一篇 :
语音搜索时代,如何利用智能音箱卖货
-
任正非再现冷幽默:华为CEO可以是外籍人员,但有两个条件
2026-05-14栏目: 教程
-
相继表态,意、英、德欧洲三国皆希望与华为合作,谷歌也不例外
2026-05-14栏目: 教程
-
中国第4大运营商来袭,携号转网套路多,移不动联不通信不过拜拜
2026-05-14栏目: 教程
-
美国让华为更强大,9个月入账6千亿增速超2成,5G合同已签60多份
2026-05-14栏目: 教程
-
未来几年,这4个大学专业最吃香,前景广阔堪称铁饭碗!
2026-05-14栏目: 教程
