php中关于include包含页面路径问题解决方法
慢慢的到后来发现了一个很严重的问题,例如:
<web>(网站根目录) ├<A>文件夹 │ │ │ └1.php ├<B>文件夹 │ │ │ └2.php └index.php
在1.php中通过include("../B/2.php");来引入B目录下的2.php文件
在index.php中通过include("A/1.php");来引入A目录下的1.php文件
运行出来当然会出现问题,找不到../B/2.php文件
静下心来好好分析一下,index.php中引用了A目录下的1.php文件,这时候
1.php被编译到index.php中执行,也就是相当于1.php同index.php一样位于网站根目录下
但是在1.php别忘记了一断代码include("../B/2.php");
"../"意味着什么?上一级目录,现在1.php已经在根目录下了,这时候再上一级,那就已经
找不到2.php了,所以问题就出现在此。
那么如何解决能?很多人会想到include("/B/2.php"),这样不就好了,同样不行
php不同于我们的jsp,在include中使用"/"并不是我们所想象的网站根目录,它代表的的
当前的目录,因此还是不行。
那是不是没有方法可解决了?当然是有的
既然不能用相对的,那我们可以改用绝对路径的方式。
realpath("./") 用于获取当前网站根目录的绝对路径,如:c:\wamp\www\网站名称\
因此我们可以交include("../B/2.php");改成include(realpath("./")."B/2.php");
这样的话,不管页面在哪一级目录,我都可以去引用,不用再担心路径问题了!
以上就是php中关于include包含页面路径问题解决方法的详细内容,更多请关注其它相关文章!
上一篇: PHP学习笔记之变量用法详解_PHP教程
下一篇: MySQL用户授权
推荐阅读
-
php中的路径问题与set_include_path使用介绍
-
PHP中require和include路径问题详解
-
php中header跳转使用include包含解决参数丢失问题
-
php中的路径问题与set_include_path使用介绍
-
php中header跳转使用include包含解决参数丢失问题,headerinclude
-
PHP中require和include路径问题总结,requireinclude
-
php中require/include 包含相对路径的解决办法
-
php中的路径问题与set_include_path
-
解决php include中绝对路径与相对路径的有关问题
-
PHP中require和include路径问题详解