关于PHP的file_exists函数

今天用这个函数判断一下图片是否存在,遇到了一个问题。

if(file_exists("/ueditor/php/upload/image/20170621/1498038174913865.jpg")){

    echo 1;

}else{

    echo 0;

}

//输出0
<img src ="/ueditor/php/upload/image/20170621/1498038174913865.jpg" />

然而在同一个页面中用img标签却能正确显示图片。这是为什么?

阅读 4k
5 个回答

file_exists判断的/开头的地址是linux文件的绝对路径,img标签/开头的是相对你的url的路径,两个路径肯定是不一样的!
html及linux基础不过关

楼上正解~

结合楼上,另外如果想解决你的问题。

file_exists中的参数应该为绝对地址,可以尝试使用__DIR__常量。
如果是框架的话,一般会有对应的常量使用,这样子去定义判断会相对可控。

新手上路,请多包涵

楼上正解,起码要获取站点根目录这拼接起来。

基础不过关. 一个是文件系统路径, 一个是URL路径. 两者没关系. 一点关系都没有.
看着像, 只是巧合.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题