Rumah > pembangunan bahagian belakang > tutorial php > php中关于include包含页面路径问题解决方法

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

黄舟
Lepaskan: 2023-03-11 12:00:01
asal
2117 orang telah melayarinya


刚开始使用phpinclude包含文件时并没有发现什么问题,
慢慢的到后来发现了一个很严重的问题,例如:

<web>(网站根目录)
  ├<A>文件夹
  │ │
  │ └1.php
  ├<B>文件夹
  │ │
  │ └2.php
  └index.php
Salin selepas log masuk


在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");

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

Atas ialah kandungan terperinci php中关于include包含页面路径问题解决方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan