PHP中getenv()和$_SERVER的区别
PHP中getenv()和$_SERVER的用法区别:
getenv 取得系统的环境变量,环境变量的格式为name=value。
语法: string getenv(string varname);
返回值: 字符串 函数种类: PHP 系统功能
内容说明
若正确取得环境变量 varname,则返回变量值,失败则返回 false。
下例可以取得用户浏览器所在机器的网址
<?php $ip = getenv(“REMOTE_ADDR”); ?>
$_SERVER是服务器超级全局变量数组 用$_SERVER['REMOTE_ADDR']同样可以获取到客户端的IP地址。
二者的区别在于,getenv不支持IIS的isapi方式运行的PHP。
【转】解决PHP获取不到ip地址`函数getenv(“REMOTE_ADDR”)与$_SERVER['REMOTE_ADDR']的区别
最近用PHP帮朋友写了个用于投票的页面,一切都很顺利,装上后发现:访客IP地址没能记录上(没能成功获取IP地址),怪事,当初本地测试都好的呀。难不成本地和服务器有别,马上开个空间,测试,仍然一切正常。再一个个问题都排除后,了解到对方是windows下的iis,而自己测试都在apache上,很可能是这个原因。
马上更换函数:将原来的ip地址获取函数”getenv(“REMOTE_ADDR”)“更换为”$_SERVER['REMOTE_ADDR']“,覆盖更新,再看数据库,ip地址已经成功记录,搞定。
既然再次遇到这问题,就还是记录下吧:PHP中获取访客(客户端)的ip地址函数getenv(“REMOTE_ADDR”) 与$_SERVER['REMOTE_ADDR']的区别,其实,通过这件事,已经很清楚了。getenv(“REMOTE_ADDR”)函数在 apache下能正常获取ip地址,而在iis中,一点作用都没,而$_SERVER['REMOTE_ADDR']函数,既可在apache中成功获取 访客的ip地址,在iis下也同样有效。
摘自:http://wanglianghuaihua.blog.163.com/blog/static/54251531201091211275342/
最新文章
- IO流
- Linux常用命令学习8---(用户和用户组管理)
- <;s:select>;下拉框是空白的解决办法
- [Tomcat] Tomcat远程调试
- TCL语言笔记:TCL中的数学函数
- js 使用技巧 - [近几年工作中的经验总结的技巧]
- python 3.5 之 单双三引号
- JAVA文件的两种读取方法和三种写入方法
- HDU5882
- Junit 注解 类加载器 .动态代理 jdbc 连接池 DButils 事务 Arraylist Linklist hashset 异常 哈希表的数据结构,存储过程 Map Object String Stringbufere File类 文件过滤器_原理分析 flush方法和close方法 序列号冲突问题
- FLASHBACK介绍
- LOJ #6062. 「2017 山东一轮集训 Day2」Pair
- Codeforces 808G Anthem of Berland(KMP+基础DP)
- 准备尝试openFrameworks
- 【坐标离散化】AOJ0531- Paint Color
- Entity Framework Core(3)-配置DbContext
- echarts重绘
- SupperSocket深入浅出(二)
- air游戏接入小米支付sdk
- 【qbxt五一】day2