如何在不同文件夹深度的php中引入相同php文件?
程序员文章站
2022-03-27 11:22:04
...
由于网站需要,我想在www/sub/sub.php中引入www/includes/application_top.php,但这样做会导致路径报错,我使用的是zencart,请问这种情况要怎么做?
回复讨论(解决方案)
在www/sub/sub.php中引入www/includes/application_top.php
require '../../includes/application_top.php';
建议把错误信息贴出来以供分析
我的意思是在不改变或者尽量少修改 application_top.php中的代码情况下,能让所有深度php引用该文件,都不会路径报错,如上图中的www/sub/sub.php 引用../includes/application_top.php会报错,找不到a.php和b.php
application_top.php 里面已经写错了,应为:
require('a.php');
require('b.php');
你的项目有从下层目录访问上层目录的情况,可见你的目录设计不合理。
合理的设计是始终都是上层访问下层
如果你无法避免,那么可以
1、在公共(通常是 comfig.php)中设置常量 ROOT_PATH,供引入文件时使用
2、在入口文件中执行
ini_set('include_path', ini_get('include_path').PATH_SEPARATOR.'/www/'));
动态设置搜索路径
3、如有可能,就直接在php.ini中设置 include_path
谢谢2位牛人,明白了
上一篇: PHP怎样获取字符流中第一个不重复字符
下一篇: ThinkPhp缓存原理及使用详解