这是我的代码。
$filename = "$myMedia catalog/category/ $myImage.png";
$filename = str_replace(" ", "", $filename);
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
variable
以上输出http://50.87.6.244/~storeupp/media/catalog/category/Game_Used.png
确实存在。但是,它说它不存在。
知道为什么吗?
答案 0 :(得分:5)
试着像这样使用:
$filename = dirname(__FILE__) . "/ $myMedia catalog/category/ $myImage.png";
$filename = str_replace(" ", "", $filename);
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
答案 1 :(得分:4)
我不知道,但我认为,如果您将外部网络资源作为资产,则以下代码会更成功:
$filename = $myMedia."catalog/category/".$myImage.".png";
$headers = @get_headers($filename);
$exists = ($file_headers[0] == 'HTTP/1.1 404 Not Found');
答案 2 :(得分:2)
OT:您可以在“{}”括号之间包围变量,而不是使用空格和str_replace(“”,“”,$ filename)。
$filename = "{$myMedia}catalog/category/{$myImage}.png";
答案 3 :(得分:0)
该文件看起来像是在您的Web根目录之外。因此,无法通过网络获得。如果您尝试检查计算机上的本地文件,请改用文件根目录。 (即/path/to/media/catalog/category/Game_Used.png)
答案 4 :(得分:0)
您需要引用文件的路径或您不能使用的目录http://
链接
答案 5 :(得分:0)
在documentation中,它声明file_exists()函数仅适用于PHP 5.0中的一些URL包装。