带有数字 PHP 的 if 语句中的逻辑
Logic in if statement with numbers PHP
谁能解释一下这里发生了什么:
if(2 && 5 < 4)
如果我有例如
$x = 2 && 3;
和 var_dump($x) 无论数字是什么,它都会给出 boolean(true)。
但是这里看起来数字是和4一个一个比较的。
查看 PHP 比较 table for PHP http://php.net/manual/en/types.comparisons.php
对于整数,除 0 以外的数字 returns 比较正确。
if (2 && 5 < 4) => if (true && false) => false
$x = 2 && 3 = 1 && 1 = 1
因为如果一个变量有一个整数值,true会因为类型转换而变成1
谁能解释一下这里发生了什么:
if(2 && 5 < 4)
如果我有例如
$x = 2 && 3;
和 var_dump($x) 无论数字是什么,它都会给出 boolean(true)。 但是这里看起来数字是和4一个一个比较的。
查看 PHP 比较 table for PHP http://php.net/manual/en/types.comparisons.php
对于整数,除 0 以外的数字 returns 比较正确。
if (2 && 5 < 4) => if (true && false) => false
$x = 2 && 3 = 1 && 1 = 1
因为如果一个变量有一个整数值,true会因为类型转换而变成1