当我将我的网站从HostGator移动到一个专用服务器时,有几件事情被打破,所有内容都被破坏,涉及类型强制。如果$ _POST ['var']为0,则不认为它是整数,并且无法与另一个整数进行比较。
我在我找到的网站上所有那些破碎的地方经历了强制性类型,但我确信还有更多我找不到的地方。我并不熟悉PHP.ini配置,但也许你可以告诉我如何解决这个问题?
由于
答案 0 :(得分:5)
不 - 您无法更改PHP类型转换功能,但您可以编写代码以更好地处理PHP的动态类型转换。
所有请求变量都会自动视为字符串。如果没有看到你的代码,就很难确定你的“未通过比较”的标准是什么。
如果我跑:
print var_export((0=="0"), true) . "\n";
print var_export(("0"==0), true) . "\n";
print var_export((0==(integer)"0"), true) . "\n";
print var_export((0==="0"), true) . "\n";
然后我得到
true
true
true
false
即。整数比较失败的唯一时间是我要求匹配类型和值。