我遇到了 php 以不同方式处理“0”的问题。
我在两台不同的机器上运行以下脚本:
$a = "0";
if ($a) {
echo("helo");
}
1) 本地机器 -> PHP 5.2.17 -> 它将“0”视为有效并打印“helo”
2) 服务器 -> PHP 5.3.6 -> 它将“0”视为空/假并且不会打印“helo”
这是由于 php 配置(如果是,是什么配置)或 php 版本?
最佳答案
本来就是这样的。 PHP 在 bool 上下文中解释字符串。 "0"
相当于实际的 0
。 (另请参阅 http://www.php.net/manual/en/types.comparisons.php)
您要测试的可能是:
if (strlen($a)) {
关于PHP 将 "0"视为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8601534/