欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP获取站点源目录

程序员文章站 2022-04-18 14:57:46
...
PHP获取站点根目录
  1 将下面的代码放在网站根目录下的一个文件中,以便在其它文件中引用。  2   3 路径方式:  4   5 define('BASE_PATH',str_replace('\\','/',realpath(dirname(__FILE__).'/'))."/");  6   7 echo BASE_PATH;  8   9   10  11 输出结果:E:/wwwroot/ 12  13 url方式: 14  15   16  17 $PHP_SELF=$_SERVER['PHP_SELF']; 18  19 $url='http://'.$_SERVER['HTTP_HOST'].substr($PHP_SELF,0,strrpos($PHP_SELF,'/')+1); 20  21 echo $url; 22  23   24  25 输出结果:http://localhost/ 26 其它的资料整理: 27 PHP取得站点根目录 28  29   30  31 echo $_SERVER['HTTP_HOST'];//当前请求的 Host: 头部的内容 即域名信信息 32  33 echo $_SERVER['PHP_SELF'];//当前正在执行脚本的文件相对网站根目录地址,就算该文件被其他文件引用也可以正确得到地址 34  35   36  37 echo $_SERVER['SCRIPT_NAME'];//当前正在执行脚本的文件相对网站根目录地址,但当该文件被其他文件引用时,只显示引用文件的相对地址,不显示该被引用脚本的相对地址。 38  39   40  41 echo $_SERVER['DOCUMENT_ROOT'];//网站相对服务器地址即网站的绝对路径名 #当前运行脚本所在的文档根目录。在服务器配置文件中定义 42  43   44  45 echo $_SERVER['SCRIPT_FILENAME'];//当前执行脚本的绝对路径名。 46  47   48  49 方法一: 50  51   52  53 今天讲了大致的站点目录结构,其中说到了怎样取得站点根目录,好多同学不是很理解,下面一步一步道来: 54  55   56  57 我的站点目录据对路径:D:\www\message2011,测试文件路径:D:\www\message2011\include\config.inc.php 58  59   60  61 在根目录下新建一个文件,也可以隔一层目录创建,就以上面为例,我要在config.inc.php中取得站点的根目录。 62  63   64  65 1、取得当前文件的路径:用魔术常量__FILE__。这里的路径包含了文件名,结果如下: 66  67   68  69 D:\www\message2011\include\config.inc.php 70  71   72  73 2、去掉上面路径的文件名,得到纯路径:dirname(__FILE__),结果如下: 74  75   76  77 D:\www\message2011\include 78  79   80  81 3、返回一层目录到根目录:realpath(dirname(__FILE__).'/../'),结果如下: 82  83   84  85 D:\www\message2011 86  87   88  89 4、把向左的”\“转化成向右的”/“:str_replace( '\\' , '/' , realpath(dirname(__FILE__).'/../')),结果如下: 90  91   92  93 D:/www/message2011 94  95   96  97 到这就是我们想要的站点根目录了,可以根据需求设定第三步返回目录层数,比如:返回2层就是 /../../,那么就会得到 D:\www\,以此类推。 98  99  100 101 方法二:102 103  104 105 在global.inc   里定义根目录106 107  108 109 define("APP_ROOT",dirname(__FILE__));110 111  112 113 在任何PHP文件中可以引用该常量114 115  116 117 require_once(APP_ROOT."/inc/head.php");118 119  120 121  122 123 方法三:124 125  126 127 php128 129  130 131 $PHP_SELF=$_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];132 133  134 135 $url='http://'.$_SERVER['HTTP_HOST'].substr($PHP_SELF,0,strrpos($PHP_SELF, '/')+1);136 137  138 139 echo $url;140 141  142 143 方法四:144 145  146 147 $basepath=$_SERVER['PHP_SELF'];148 149  150 151 $basepath=substr($basepath,0,strpos($basepath,"文件夹名称"));152 153  154 155 echo $basepath;156 157  158 159 如:你把文件保存为a.php并路径为:/wjj/wjj1/wjj2/a.php160 161  162 163 上面的例子就写成:164 165  166 167 $basepath=$_SERVER['PHP_SELF'];168 169  170 171 $basepath=substr($basepath,0,strpos($basepath,"wjj1"));172 173  174 175 echo $basepath;176 177  178 179 方法五:180 181  182 183 $basepath=$_SERVER['PHP_SELF'];184 185  186 187 preg_match("/(\/)?([^\/]+)/",$basepath,$wjm);188 189  190 191 echo $wjm[0];192 193  194 195 注意,第二种方法我不太会,如文件路径为:/wjj/wjj1/wjj2/a.php,它只返回 /wjj 后面的/自己加!196 197  198 199 ?>

PHP获取站点源目录

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • PHP获取站点源目录
  • 专题推荐