PHP获取URL完整路径及物理路径

PHP的预定义变量$_SERVER是一个包含头部(headers),路径信息及脚本位置的数组,数组的实体由web服务器创建. 利用$_SERVER数组,我们可以获取URL完整路径及真实路径,让自己随心所欲的运用它们. $_SERVER[SERVER_NAME] // 当前运行脚本所在服务器主机的名称. $_
PHP的预定义变量$_SERVER是一个包含头部(headers),路径信息及脚本位置的数组,数组的实体由web服务器创建.
利用$_SERVER数组,我们可以获取URL完整路径及真实路径,让自己随心所欲的运用它们.
$_SERVER['SERVER_NAME'] // 当前运行脚本所在服务器主机的名称.
$_SERVER[SERVER_PORT'] //用户连接到服务器时所使用的端口.
 $_SERVER['REQUEST_URI'] //当前运行脚本除主机名外的请求URL.
$_SERVER['DOCUMENT_ROOT'] //当前运行脚本所在的文档根目录.
举例 URL : https://www.genban.org/Test/Test.php
$_SERVER['SERVER_NAME']:  www.genban.org
$_SERVER['SERVER_PORT'] : 80www.genban.org
$_SERVER['REQUEST_URI'] : /Test/Test.php
$_SERVER['DOCUMENT_ROOT'] : /home/var/www/genban.org/htdocs
所以URL完整路径为: “https://”.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']
说明 :
  1.  默认http的端口为80 ,所以一般$_SERVER['SERVER_PORT']不纳入URL完整路径,当然特殊情况,特殊对待!
   2. 有人会用$_SERVER['REMOTE_HOST']获取主机名,可是它的含义是:正在浏览当前页面用户的主机名(此变量必须由Web 服务器来创建).
延伸:
$_SERVER['REMOTE_HOST']为空值的解决方法
修改apache服务器配置文件httpd.conf内的HostnameLookups为On
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

今天在用php进行图片保存输出时候,图片一直显示错误,后面用调试模式下提示:Warning: Cannot modify header information - headers already sent by... 看了一些网上的方法也没解决,最后在php.ini配置output_buffering默认为4096就没有遇到这个错误了: o
ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车/空格/换行/都会有Header had all ready send by的错误,这时可以先用ob_start()打开缓冲区PHP代码的数据块和echo()输出都会进入缓冲区而不会立刻输出.当然打开缓冲区的作用很多,只要
第一种方法:用php的strpos() 函数判断字符串中是否包含某字符串的方法 if(strpos(www.genban.org,genban) !== false){ echo 包含genban; }else{ echo 不包含genban; } 第二种 使用了explode 用explode进行判断PHP判断字符串的包含代码如下: ?php $name = 00
/u 表示按unicode(utf-8)匹配(主要针对多字节比如汉字) /i 表示不区分大小写(如果表达式里面有 a, 那么 A 也是匹配对象) /s 表示将字符串视为单行来匹配
随机生成难点是在于如何避免碰撞,有人说用md5,GUID这些机制啊,当然可以,但是做为账号,看着有乱,而且生成位数也过长。 本方法只需要解决1秒内的并发碰撞就可以,因为固定头部采用的是unixtime时间,精确到秒,超过1秒,这个头部的时间肯定变化了。同时
文实例讲述了PHP页面实现定时跳转的方法,分享给大家供大家参考。具体实现方法如下: php定时跳转我们需要利用header函数输入html或js代码来实现定时跳转,下面我来介绍一个简单的例子 php代码如下: header(refresh:3;url=https://www.genban.org);print(正