您的位置:首页 > 编程语言 > PHP开发

php文件之间相互引用路径问题的一般处理方法

2010-09-01 16:40 603 查看
 

在其他web编程语言中相对路径都是以当前处理文件目录为基准,而在php中并非如此。php中相对路径是以当前工作目录为基准的,并非以当前处理文件目录为基准,这样在开发过程中带来了不少的麻烦。比如会遇到一下问题

aaa

      a.php

      bbb

            b.php

            b1.php

            ccc

                 c.php

以上目录中c.php中require(../b1.php),在a.php中require(bbb/ccc/c.php),这样就会出错,因为a.php中会在../中找b1.php,会找不到b1.php文件而报错,解决以上引用问题的一般做法有两种:

 

一、在a.php中加上define('ROOT_PATH',dirname(__FILE__));

      之后再加上
     require ROOT_PATH/bbb/ccc/c.php

    

二、 在根目录下新建一个文件global.php,内容包含chdir(dirname(__FILE__));

       在每个文件中都将这个global.php包含进来。

 

综上所述,如果a文件引用了非同目录的b文件,且这个a文件将被非同目录的c文件引用,那么就要在a文件中用dirname(__FILE__)来包含b文件,否则在执行c文件时,会报错找不到b文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息