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

时间:2014-01-17 21:52:34

标签: php logical-operators

我正试图抓住这个月,如果某个月(1112echo某事。为什么 这项工作:

if ( date("m") == '11' )  echo 'asdf'

这不是:

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

2 个答案:

答案 0 :(得分:12)

正确的方法是

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

答案 1 :(得分:4)

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

||的运算符优先级高于==,因此首先计算它... 11 || 12求值为布尔值true;并且date('m')给出一个1到12之间的数字......任何正整数在比较(==)和布尔值为true时都会给出一个真值,因此if测试始终有效