我的if语句有问题。
我想存档:—如果发送者id与用户id匹配,则授予访问权限—用户id = grant access
目前我只有这个:
if($pmData['sender_id']!=$userdata['id'] && $pmData['receiver_id']!=$userdata['id'])
redirect("?i=a");
但是正如你所看到的,在这个语句中,发送方id和接收方id都与用户id非常匹配。
如何归档其他文件?
用or
/||
代替&&
?
if ($pmData['sender_id'] == $userdata['id'] || $pmData['receiver_id'] == $userdata['id']) {
redirect("?i=a");
}
您需要的是将两者与||
(或)相结合,而不是&&
(和)
if($pmData['sender_id'] == $userdata['id'] || $pmData['receiver_id'] == $userdata['id']){
// Grant Access
}
else{
// Deny Access
}
假设变量名为$sender
、$receiver
和$user
:
if ($sender == $user || $receiver == $user) { allow(); }
else { forbid(); }
如果我理解您的问题,您只需要将&&
(AND)替换为||
(OR)
可以这样想。,,意思是"双方都必须满足条件"。意思是"其中一个必须满足条件"。
有||就像在一个语句中有两个不同的if语句&&就像在if语句里面放一个if语句来做一些事情。