doudun1934 2017-01-18 16:08
浏览 76
已采纳

我使用filter_input的方式有什么问题? [重复]

I am told that I should use filter_input rather than accessing $_SERVER directly

So I made this simple 2 line of code

    echo "filter:input " . filter_input(INPUT_SERVER,'REMOTE_ADDR');
    echo "SERVER:" .$_SERVER['REMOTE_ADDR'] ; 

Very simple. I expect they both produce the exact same thing.

This is what I got

filter:input SERVER:202.80.212.17

Clearly filter_input(INPUT_SERVER,'REMOTE_ADDR') produces empty string.

Why?

</div>
  • 写回答

1条回答 默认 最新

  • doujue9767 2017-01-18 16:17
    关注

    It has been a bug in older versions of php. You can either use

    echo "filter:input " . filter_input(INPUT_ENV, 'REMOTE_ADDR', FILTER_VALIDATE_IP);
    

    Or use

    echo "filter:input " . filter_input($_SERVER['REMOTE_ADDR']);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 vue2中使用计算属性
  • ¥50 远程桌面打开Mastercam、没有许可证、物理机打开正常
  • ¥15 ubuntu安装gdal后java读取tif文件报错
  • ¥15 请问lammps怎么做两种金属连接的原子浓度分布图
  • ¥15 求jacquard数据集
  • ¥15 w10部分软件不能联网
  • ¥15 关于安装hbase的问题(操作系统-windows)
  • ¥15 novnc连接pve虚拟机报错安全协议不支持262
  • ¥15 设备精度0.03给多少公差能达到CPK1.33
  • ¥15 qt+ffmpeg报错non-existing PPS 0 referenced