Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么这个php语句不起作用?_Php_Logical Operators - Fatal编程技术网

为什么这个php语句不起作用?

为什么这个php语句不起作用?,php,logical-operators,Php,Logical Operators,我试图抓住这个月,如果某个月(11或12)echo什么的话。为什么 这项工作: if ( date("m") == '11' ) echo 'asdf' 这并不是: if ( date("m") == '11' || '12' ) echo 'asfd' 正确的方法是 if ( date("m") == '11' || date("m") == '12' ) echo 'asfd'; 解释它为什么不工作:运算符优先级 |的运算符优先级高于=,因此首先对其求值11 | | 12的计算结

我试图抓住这个月,如果某个月(
11
12
echo
什么的话。为什么 这项工作:

if ( date("m") == '11' )  echo 'asdf'
这并不是:

if ( date("m") == '11' ||  '12' )  echo 'asfd'
正确的方法是

if ( date("m") == '11' || date("m") == '12' ) echo 'asfd';

解释它为什么不工作:运算符优先级


|
的运算符优先级高于
=
,因此首先对其求值<代码>11 | | 12的计算结果为布尔真;日期('m')给出一个介于1和12之间的数字。。。当将(
=
)与布尔值true进行比较时,任何正整数都会给出一个true,因此如果
测试总是有效的,那么
检查一下:我很惊讶第一个测试在没有
的情况下工作在echosecond的末尾,第二个是把它弄得一团糟,但很难达到这个标记,向所有越过这个标记的人致敬。