一起源码网

  • www.171739.xyz
  • 全球最大的互联网技术和资源下载平台
搜索
猜你喜欢
查看: 6345|回复: 1
打印 上一主题 下一主题

php中关于include包含页面路径问题解决方法

[复制链接]

0

主题

0

帖子

1万

积分

钻石会员

Rank: 8Rank: 8

积分
17424
QQ
跳转到指定楼层
楼主
发表于 2020-3-4 15:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚开始使用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不同于我们的,在include中使用"/"并不是我们所想象的网站根目录,它代表的的
当前的目录,因此还是不行。
那是不是没有方法可解决了?当然是有的

既然不能用相对的,那我们可以改用绝对路径的方式。
realpath("./") 用于获取当前网站根目录的绝对路径,如:c:wampwww网站名称
因此我们可以交include("../B/2.php");改成include(realpath("./")."B/2.php");

这样的话,不管页面在哪一级目录,我都可以去引用,不用再担心路径问题了!

分享到:  QQ好友和群QQ好友和群
收藏收藏
回复

使用道具 举报

5

主题

17

帖子

129

积分

注册会员

Rank: 2

积分
129
沙发
发表于 2022-9-2 17:45 | 只看该作者
如何通过网页代码下载视频
回复

使用道具 举报

一起源码让程序更轻更快

www.171739.xyz

工作时间 周一至周六 8:00-17:30

侵权处理

客服QQ点击咨询

关注抖音号

定期抽VIP

Copyright © 2016-2021 https://www.171739.xyz/ 滇ICP备13200218号

快速回复 返回顶部 返回列表