如何检查用户是否属于数组中的组,或者他们的用户名 ($un) 是否等于“X”。(如果做不到这一点,我想我可以进行两次单独的检查)
我有以下内容,但它给了我一个“意外的 OR”错误:
<?php if (in_array('SMT', $adGroups)) or ($un == 'abc' || $un == 'xyz') echo 'blah'; ?>
谢谢 ..
如何检查用户是否属于数组中的组,或者他们的用户名 ($un) 是否等于“X”。(如果做不到这一点,我想我可以进行两次单独的检查)
我有以下内容,但它给了我一个“意外的 OR”错误:
<?php if (in_array('SMT', $adGroups)) or ($un == 'abc' || $un == 'xyz') echo 'blah'; ?>
谢谢 ..
您的代码语法错误,您有一个额外的右括号)
。
尝试像这样修复它:
if (in_array('SMT', $adGroups) || $un == 'abc' || $un == 'xyz') {
//Your code here
}
将第二个右括号移到条件的末尾:
if (in_array('SMT', $adGroups) or ($un == 'abc' || $un == 'xyz')) echo 'blah';
这是一个语法错误:
if (in_array('SMT', $adGroups)) or ($un == 'abc' || $un == 'xyz')...
^
当错误消息显示“意外或”时,它实际上意味着它所说的......
一个改进的步骤是if (in_array("SMT", $adGroups, true) || in_array($un, ["abc", "xyz"], true)) { print "blah"; }
,这将使您能够在用户检查部分指定任意数量的不同用户。避免多个if()
语句,它可以更快地解决检查。
你的右括号放错了地方。尝试:
if (in_array('SMT', $adGroups) or ($un == 'abc' || $un == 'xyz')) echo 'blah';