php include的路径问题,php7中include有相对路径无法打开

博客探讨了在PHP中使用include引入文件时遇到的相对路径问题。当从不同层级的目录引入文件时,相对路径可能导致找不到文件的错误。文章解释了`../`表示上一级目录,并指出在index.php中使用`/`并不表示站点根目录,而是当前目录。为了解决这个问题,提出了使用`realpath()`获取当前绝对路径,并结合该路径来构建包含文件的绝对路径,从而确保正确引入。
摘要由CSDN通过智能技术生成

目前相对路径,可以用

include"./1.php";)

上一个相对路径,可以用

include"../1.php";)

一开始采用php的include包括文档时并沒有发现什么情况,

渐渐地的到后面发觉了1个很严重的情况,比如说:

(站点网站根目录)

├文件目录

││

│└1.php

├文件目录

││

│└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");这样一来,无论网页页面在哪里一级目录,我也能够 去引入,无需再担忧相对路径情况了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值