我有一个简单的代码,用于检查服务器中是否存在文件。
<?php
$filename = 'www.testserver/upload/productimg/IN.ZL.6L_sml.jpg';
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
?>
问题:我的本地网络服务器说即使我在浏览器中复制粘贴网址时文件也不存在,我可以看到图片。
如何让条件说文件确实不存在?
答案 0 :(得分:1)
另一种选择是,发出请求并检查响应标头:
<?php
$headers = get_headers('http://www.example.com/file.jpg');
if($headers[0]=='HTTP/1.0 200 OK'){
return true; // file exists
}else{
return false; // file doesn't exists
}
?>
答案 1 :(得分:0)
您可以尝试使用真实的图像路径:
<?php
$filename = 'www.testserver/upload/productimg/IN.ZL.6L_sml.jpg';
$testImage = @file_get_contents($filename);
if ($testImage != NULL) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
?>
答案 2 :(得分:0)
使用
$filename = $_SERVER["DOCUMENT_ROOT"]."/upload/productimg/IN.ZL.6L_sml.jpg";
用于测试文件。