首页 > 代码库 > php的文件引用
php的文件引用
最近研究公司代码时发现了set_include_path(dirname(__FILE__));这样一行代码,在网上查了些资料,才把这个方法的作用弄清楚。
首先,dirname(__FILE__)这个方法返回当前代码所在文件的路径。
而set_include_path这个函数呢,就相当于windows的环境变量。windows可以通过环境变量的路径,来从指定的路径下寻找需要的文件。
当我们的项目需要引入多个类文件、函数文件时,特别是当所引用的文件路径比较深的时候,我们的代码就会变成下面这样:
1 <?php 2 include("xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/test1.php"); 3 include("xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/test2.php"); 4 include("xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/test3.php"); 5 include("xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/test4.php"); 6 include("xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/test5.php"); 7 ?>
是不是感觉写出来很多冗余的代码了。
如果我们设置了set_include_path("xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/");那么我们的代码前面的路径就可以省略了。
1 <?php 2 set_include_path("xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/"); 3 include("test1.php"); 4 include("test2.php"); 5 include("test3.php"); 6 require("test4.php"); 7 require("test5.php"); 8 ?>
set_include_path函数还可以设置多个路径变量,在linux下用:分隔,在windows下用;分隔。比如:
1 <?php 2 define(‘A‘,‘xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/‘); 3 define(‘B‘,‘yyy/yyy/yyy/yyy/yyy/yyy/yyy/yyy/‘); 4 define(‘C‘,‘zzz/zzz/zzz/zzz/zzz/zzz/zzz/zzz/‘); 5 6 set_include_path(A.PATH_SEPARATOR.B.PATH_SEPARATOR.C); 7 8 include("test1.php"); 9 include("test2.php"); 10 include("test3.php"); 11 require("test4.php"); 12 require("test5.php"); 13 14 ?>
最后,还有两个php预定义变量
PATH_SEPARATOR:路径分隔符,include多个路径使用,在win下,当你要include多个路径的话,你要用”;”隔开,但在linux下就使用”:”隔开的。
还有DIRECTORY_SEPARATOR:目录分隔符,linux上就是’/’ windows上是’\’。
php的文件引用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。