我试图检查我的PHP代码,如果我的用户有必要的权利来执行一个操作,但我的条件不会工作。我可能误解了AND/OR。我可否需要你的帮助?PHP多个或在if条件
其实,我有:
if (!in_array('ADMIN',$_SESSION['roles']) || !in_array('MANAGEMENT',$_SESSION['roles']) || $requester != $_SESSION['tnumber']) {
echo "you are not allowed to XXXX !";
} else {
// allowed
}
我已经把这些3个条件与OR值(||),但它的失败。
我想说的是:
- 如果用户没有(在
$SESSION['roles']
数组中值),“管理员”或“管理”权限 - 或者,如果用户不是请求者(
$requester
应该是相同的$_SESSION['tnumber']
那么他应该有一个消息,说他是不允许的。
行吟rwise(如果他有ADMIN权限,或管理权限,或者他是请求者),那么它应该工作。
如何更改我的条件以满足此要求?
谢谢, 关心!
你为什么不只是让两个嵌套的if语句出来的吗? – hmrc87
尝试使用echo $ _SESSION ['roles']和$ _SESSION ['tnumber']和$ requester找出你正在得到的值 – coder