Server变量里奇怪的IP值,遇到的人估计少,求高手解释!

itian 2012-07-09 05:39:42
我尝试取客户端IP,调试过程中var_dump($_SERVER);信息里

…………
["REMOTE_ADDR"]=>
string(14) "222.51.8.131"
["REMOTE_HOST"]=>
string(14) "222.51.8.131"
…………

["HTTP_X_REAL_IP"]=>
string(12) "222.51.8.131"
["HTTP_X_FORWARDED_FOR"]=>
string(12) "222.51.8.131"
…………

IP地址显示出来是一样,但是长度却不同(前两条为14,后两条为12,为什么?多余的字节数是什么?),导致取出来的IP地址不一致。

表面上REMOTE_ADDR的值为"222.51.8.131",但是
$ip = $_SERVER['REMOTE_ADDR'];

echo $ip[0]; //1
echo $ip[1]; //1
echo $ip[2]; //3
echo $ip[3]; //.
echo $ip[4]; //1
echo $ip[5]; //0

…………拼接起来是 113.105.151.19

这个问题是什么原因造成的?应该如何修复?
...全文
279 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
itian 2012-07-10
  • 打赏
  • 举报
回复
楼上所说的回车换行符是什么意思?

var_dump自动给某个变量加的?

你说指的原始现场是什么?var_dump($_SERVER)的输出信息?
xuzuning 2012-07-09
  • 打赏
  • 举报
回复
不就是有个回车换行符吗?

提出问题时,请不要改变原始的现场
phf0313 2012-07-09
  • 打赏
  • 举报
回复
不晓得。。。

4,251

社区成员

发帖
与我相关
我的任务
社区描述
国内外优秀PHP框架讨论学习
社区管理员
  • Framework
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧