需要codeigniter的帮助,我认为file_exists用于服务器路径,而不是用于url。但我的图像文件夹与应用程序和系统文件夹相同。在谷歌上找不到任何内容,请帮忙
$url=base_url();
$filename="$url/upload/$id.jpg";
if (file_exists($filename)){
echo "<li><img src=\"".$url."upload/$id.jpg\" width=\"40\" height=\"40\" /></li>";
}else{
echo "<li><img src=\"http://www.mydomain.com/haha/image/noimg.png\" width=\"40\" height=\"40\" /></li>";
}
答案 0 :(得分:47)
Codeigniter始终在index.php
上运行,因此所有路径都是相对的。假设upload/
与index.php
处于同一级别,您可以使用以下任何一项:
file_exists("upload/$id.jpg")
file_exists("./upload/$id.jpg")
file_exists(FCPATH."upload/$id.jpg")
FCPATH
是Codeigniter设置的常量,它包含index.php
的绝对路径。
作为旁注,我在检查文件时更喜欢is_file()
,因为file_exists()
在目录上返回true。此外,您可能希望查看getimagesize()
是否返回FALSE
以确保您拥有图片。