首页 > 代码库 > php 相对路径中 及 绝对路径中 的一些问题

php 相对路径中 及 绝对路径中 的一些问题

写本篇文章,是为了以后学习中遇到问题好解决

php的相对路径是以当前工作目录为基准的,并不是以当前处理的文件目录为基准,这样导致我们在开发过程中总会遇到一些问题。

但是如果我们使用绝对路径,就会导致后期的项目移植,以及可维护性较差。

在使用include以及requice包含文件的时候,在文件路径前都加上dirname(__FILE__)可解决路径问题

dirname(__FILE__)获取当前文件的目录路径

ps:

当前有四个文件,分别为a.php,b.php,c.php,d.php

他们之间的关系为:

      a.php(与根目录同一级)

     根目录/b.php

     根目录/model/c.php

     根目录/public/d.php

如果要在a.php文件中包含b.php,c.php

<?php

include_once(dirname(__FILE__)."./b.php");         

include_once(dirname(__FILE__)."./model/c.php");    
?>

如果要在d.php文件中包含c.php,

<?php

include_once(dirname(__FILE__)."../../model/c.php");

?>

使用下面的这个语句可以把当前目录设置为当前文件的目录路径,也较为方便。

chdir(dirname(__FILE__));