我的网站中有一个文件,例如:http://example.com/name.txt
我想检查一下这个文件是否存在于函数内部,所以我做了这个
<?php
function checkFile($fileUrl){
if(!is_file($fileUrl) || !is_readable($fileUrl)){
return 'This is not valid file';
}
}
由于checkFile('http://example.com/name.txt');
表示无法归档文件,我还尝试使用此方法进行检查。
function checkFile($fileUrl){
$file = file_get_contents($fileUrl);
if(empty){
return 'File not found or empty';
}
}
但这两种方法都给我错误,因为找不到文件。我确定文件在那里,那么如何在线检查文件是否存在?
答案 0 :(得分:2)
或者,您可以检查来自服务器的响应标头,如果404,则使用函数
不存在文件<强> get_headers()强>
http://us1.php.net/manual/en/function.get-headers.php
$file = 'http://www.domain.com/somefile.jpg';
$file_headers = @get_headers($file);
if($file_headers[0] == 'HTTP/1.1 404 Not Found') {
$exists = false;
}
else {
$exists = true;
}
答案 1 :(得分:1)
function checkFile($fileUrl) {
if (!file_exists($fileUrl)) {
return 'This file is not a valid file.';
}
}
旁注这仅适用于PHP 5 http://us1.php.net/manual/en/function.file-exists.php