首页  >  文章  >  后端开发  >  php require文件里再require就不起提示出错

php require文件里再require就不起提示出错

WBOY
WBOY原创
2016-06-23 13:31:311572浏览

a.php里 requrice("template/pc/member/b.php") 正常

b.php里requrice("../c.php")就提示出错:failed to open stream: No such file or directory,如果我把  c.php和b.php放在同一级,或者放在b的下一级目录下包含就没有问题,但是上一级就出错,请问如何解决啊,哪里写的有问题?


回复讨论(解决方案)

贴出你的目录结构看看

贴出你的目录结构看看


应该没问题的啊!

b.php 用 requrice(dirname(dirname(__FILE__)) . "/c.php"); 试试看

用物理路径包含是没有问题的,很奇怪,被include的文件再include上一级文件就是不行,你可以试一下。

这不奇怪
a.php里 requrice("template/pc/member/b.php") 
并没有改变 a.php 的包含文件搜索路径
如果你在 b.php 里 requrice("../c.php")
就会到 a.php 的上级目录里去找 c.php,这自然是找不到的,所以报错了

在使用相对路径包含时,要坚持一个原则:
被包含文件要处于包含文件的下或同级目录中
这要既不易出错,也体现了功能文件的层次关系

这不奇怪
a.php里 requrice("template/pc/member/b.php") 
并没有改变 a.php 的包含文件搜索路径
如果你在 b.php 里 requrice("../c.php")
就会到 a.php 的上级目录里去找 c.php,这自然是找不到的,所以报错了

在使用相对路径包含时,要坚持一个原则:
被包含文件要处于包含文件的下或同级目录中
这要既不易出错,也体现了功能文件的层次关系


好的,谢谢!
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn