相对于php int64 limits,如果uri具有int64参数,如何防止GET将其错误地转换为数字并将其简单地保留为字符串?
http://some.com?id=1707541557936130
然后
echo $_GET['id'] => 1.7075415579361E+15
如何防止这种情况,并使$_GET [‘id’]为字符串1707541557936130?
$_GET现在的工作方式已无法使用.我需要自行解析$_SERVER [“ QUERY_STRING”].但是从不知道php什么时候会获取变量并再次错误地转换.
注意:afaik这将是32位而非64位php安装上的问题.
解决方法:
_GET / _POST / _COOKIE发出的所有内容都是字符串.除非您执行了一些强制将其解释为数字的操作,否则该数据不会转换为数字.
echo $_GET['id']; // echoes your big number
echo $_GET['id'] + 0; // forces an int conversion