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

 

在其他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文件。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值