Php 存在使用字符串的文件,但不使用$var
因此,我试图创建一个动态链接页面,该页面包含大量条目,如果图像存在,则链接到图像,如果图像不存在,则链接到上传框。然而,出于某种原因,当我将变量传递给文件_exists时,它返回false,即使直接传递相同的位置也返回true。例如:Php 存在使用字符串的文件,但不使用$var,php,var,file-exists,Php,Var,File Exists,因此,我试图创建一个动态链接页面,该页面包含大量条目,如果图像存在,则链接到图像,如果图像不存在,则链接到上传框。然而,出于某种原因,当我将变量传递给文件_exists时,它返回false,即使直接传递相同的位置也返回true。例如: $tempcomp = "dogs/big dogs/misty.puppy.jpg"; if (file_exists($tempcomp)) {
$tempcomp = "dogs/big dogs/misty.puppy.jpg";
if (file_exists($tempcomp))
{
echo "YES1";
}
clearstatcache();
if (file_exists ("dogs/big dogs/misty.puppy.jpg"))
{
echo "YES2";
}
clearstatcache();
此代码返回YES2,即使这两条语句完全相同。是什么导致了这种行为?可能是因为文件名中的空格:../big dogs/。。。你能用一个名称中没有空格的文件试试吗?请试试这个。var_dumprealpath$tempcompHm,可能是其中一个字符串中的隐藏字符?@davidevel明白了。我肯定在某个地方出现了某种格式错误,但如果文件存在,则alpath$tempcomp工作得非常好。@ravern很抱歉,我试图复制错误,但没有成功。我要求您使用realpath函数只是为了看看它是否返回false。我尝试了你的功能,它在Debian服务器上运行良好。