【发布时间】:2014-01-22 15:14:09
【问题描述】:
我无法检查图像是否存在我曾尝试使用 file_exists 但总是得到错误的响应。
$fjpg = $code . ".jpg";
$imurl = "producers/$dir/images/$fjpg";
if(file_exists($imurl))
{
$cimage = <<<end
<a href="$imurl"><span style="color:#990000;"><b>$code</b></span>: $desc</a></div></td>
end;
}
$cimage = <<<end
<span style="color:#990000;"><b>$code</b></span>: $desc</div></td>
end;
由于我越来越沮丧,heredoc 就在那里。我已经结束了;在实际文件中它前面没有空格。更令人困惑的是,在同一个文件中工作正常如下
<?
if (file_exists("producers/$dir/header.php")) {
include("producers/$dir/header.php");
}
?>
我尝试使用 is_file 获得相同的结果。
我已经交换了这两个语句并使用提供的链接来访问文件,所以我的假设是 $imurl 提供了一个可行的路径,而不是 file_exists 需要的路径。
我按照 Jompper 的建议使用了 echo getcwd(); 并得到
/home/caliver/public_html/figures
【问题讨论】:
-
您能告诉我们您的目录结构以及您从哪个文件调用这段代码吗?
-
您的相对路径很可能有问题。您是否尝试过检查文件的绝对路径?如果可行,那么您将不得不调整尝试引用它的相对路径。
-
打印出 $imurl 会发生什么?它读什么?
-
@Dan:缩进编辑不会影响heredoc的行为吗?
-
echo getcwd();查看当前位置的相对路径
标签: php