我有一个非常奇怪的语法问题。有人可以告诉我为什么这不起作用:
if ( ! is_single() || ! is_archive() )
但这是:
if ( ! is_single() || is_archive() )
以及如何使第一个语句起作用?提前致谢!
编辑:当答案出现时,我仍在编辑问题。无论如何,我应该提到我的意思是 a 语法。我知道这两个语句的逻辑是不一样的。所以!
必须放在外面。多谢你们。
我有一个非常奇怪的语法问题。有人可以告诉我为什么这不起作用:
if ( ! is_single() || ! is_archive() )
但这是:
if ( ! is_single() || is_archive() )
以及如何使第一个语句起作用?提前致谢!
编辑:当答案出现时,我仍在编辑问题。无论如何,我应该提到我的意思是 a 语法。我知道这两个语句的逻辑是不一样的。所以!
必须放在外面。多谢你们。
!
(negate) 运算符在 PHP 中具有更高的优先级。这就是为什么您需要将第二个表达式括在括号中:
if ( ! (is_single() || is_archive()) )
让它按您的预期工作。
用这个
if (!(is_single() || is_archive()))
你说这段代码不起作用......
if ( ! is_single() || ! is_archive() )
...但这是:
if ( ! is_single() || is_archive() )
但这不是同一个逻辑。
不是 is_single()或不是 is_archive()
不是 is_single()或is_archive()