今天我们来学习下php常见的系统函数server和files
自己做的开发项目并不是很多,$_SERVER 和$_FILES ,这两个常用的方法通常是用来操作url 和文件的上传,我用了今天一天的时间来熟悉这个两个常用的函数,并且做些总结,如果有需要的朋友,也可以看看
- <?php
- //浏览器部分的一些信息
- echo $_SERVER[‘PHP_SELF‘]."<br />"; //该函数输出的是你的当前的打开的文件的名称,如:/default.php
- echo $_SERVER[‘GATEWAY_INTERFACE‘]."<br />"; //输出你的CGI(网关接口)的信息,如:CGI/1.1
- echo $_SERVER[‘HTTP_ACCEPT‘]."<br />";
- echo $_SERVER[‘HTTP_ACCEPT_LANGUAGE‘]."<br />"; //浏览器使用的语言
- echo $_SERVER[‘HTTP_CONNECTION‘]."<br />"; //前请求的 Connection: 头部的内容。
- //用户方面常用到的一些函数
- echo $_SERVER[‘REMOTE_ADDR‘]."<br />"; #正在浏览当前页面用户的 IP 地址。如:127.0.0.1
- echo $_SERVER[‘REMOTE_HOST‘]."<br />"; #正在浏览当前页面用户的主机名。
- echo $_SERVER[‘REMOTE_PORT‘]."<br />"; #用户连接到服务器时所使用的端口。 如:56634 ,php是无法获取用户的mac地址的
- //服务器端的一些函数
- echo $_SERVER[‘SERVER_ADMIN‘]."<br />";//管理员信息
- echo $_SERVER[‘SERVER_PORT‘]."<br />" ;#服务器所使用的端口 ,如:80
- echo $_SERVER[‘SCRIPT_FILENAME‘]."<br />"; #当前执行脚本的绝对路径名。如:F:/www1/default.php
- echo $_SERVER[‘DOCUMENT_ROOT‘]."<br />"; //该函数的作用是输入你的站点的所在的位置,如:F:/www1
- echo $_SERVER[‘REQUEST_METHOD‘]."<br />" ; //用户访问该页面的请求方法
- //关于url 的一些函数
- echo $_SERVER[‘QUERY_STRING‘]."<br />"; //查询(query)的字符串,但是感觉像是通过get方式传递的参数
- echo $_SERVER[‘HTTP_HOST‘]."<br>"; #localhost
- echo $_SERVER[‘PHP_SELF‘]."<br>"; //获取网页地址 #/blog/testurl.php
- echo $_SERVER["QUERY_STRING"]."<br>"; //获取网址参数 #id=5
- echo $_SERVER[‘HTTP_REFERER‘]."<br>";//获取用户代理
- //获取完整的url
- echo ‘http://‘.$_SERVER[‘HTTP_HOST‘].$_SERVER[‘REQUEST_URI‘];
- echo ‘http://‘.$_SERVER[‘HTTP_HOST‘].$_SERVER[‘PHP_SELF‘].‘?‘.$_SERVER[‘QUERY_STRING‘];#http://localhost/blog/testurl.php?id=5
- echo ‘http://‘.$_SERVER[‘SERVER_NAME‘].‘:‘.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; //包含端口号的完整url#http://localhost:80/blog/testurl.php?id=5
- $url=‘http://‘.$_SERVER[‘SERVER_NAME‘].$_SERVER["REQUEST_URI"];
- echo dirname($url);//只取路径 #http://localhost/blog
- ?>
- <!------------------获取用户的mac地址------------------------>
- <?php
- @exec("arp -a",$array); //执行arp -a命令,结果放到数组$array中
- echo "<pre>";
- print_r($array); //打印获取的数组
- foreach($array as $value)
- {
- if( //匹配结果放到数组$mac_array
- strpos($value,$_SERVER["REMOTE_ADDR"]) &&
- preg_match("/(:?[0-9a-f]{2}[:-]){5}[0-9a-f]{2}/i",$value,$mac_array)
- )
- {
- $mac = $mac_array[0];
- break;
- }
- }
- echo $mac; //输出客户端MAC
- ?>
关于mac地址,我在测试的时候能够获取到局域网站的其他的账户的mac,但是自己的mac就是无法获取到,不知道是什么情况,难道是我的环境的问题 ?稍后再处理吧!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。