$myfilepath = SITEROOT."/uploads/vaibhav_photo/thumbnail/".$user_avatar['thumbnail'];
if(file_exists($myfilepath))
{
echo "file exist";
}
else
{
echo "file does not exist";
}
即使文件存在,也总是转到其他部分。
如果有人在PHP中有替代选项,请尽快回复,
答案 0 :(得分:6)
file_exists
仅适用于文件路径。
答案 1 :(得分:0)
$myfilepath = SITEROOT.DS.'uploads'.DS.'vaibhav_photo'.DS.'thumbnail'.DS.$user_avatar['thumbnail'
];
注意:: SITEROOT
具有实际的根路径,DS
是常量DIRECTORY_SEPARATOR
。
答案 2 :(得分:0)
Pekka是正确的file_exists
不支持http协议。
但您可以使用file_get_contents
if(file_get_contents($myfilepath)) {
echo "file exist";
}
默认情况下,它会撤回文件的全部内容。如果这不是你想要的,你可以通过添加一些标志来优化它:
if(file_get_contents($myfilepath, false, null, 0, 1)) {
echo "file exist";
}
此语法将返回第一个字符(如果存在)。
答案 3 :(得分:0)
使用getcwd()
检查您的工作目录。
你的路径
example.com/uploads/etc/etc.jpg
是相对于当前目录解释的。这很可能就像
/var/www/example.com
所以你问file_exists()
一个名为
/var/www/example.com/example.com/uploads/etc/etc.jpg
您需要找出正确的绝对路径(添加包含SITEROOT
前面所有站点根目录的路径)或正确的相对路径(相对于脚本所在的目录,没有前导{{ 1}})。
tl; dr :尝试
/