“if statement”检查两个不同的用户ID是否匹配

时间:2011-11-21 19:57:11

标签: php if-statement

我的if语句有问题。

我希望存档:   - 如果发件人ID与用户id = grant access匹配   - 如果接收者ID与用户id = grant access

匹配

目前我只有这个:

if($pmData['sender_id']!=$userdata['id'] && $pmData['receiver_id']!=$userdata['id'])
    redirect("?i=a");

但正如您所看到的,在此声明中,BOTH发件人ID和接收者ID与用户ID非常匹配。

如何归档另一个?

6 个答案:

答案 0 :(得分:3)

使用or / ||代替&&

if ($pmData['sender_id'] == $userdata['id'] || $pmData['receiver_id'] == $userdata['id']) {
    redirect("?i=a");
}

答案 1 :(得分:2)

您想要的是将两者合并为||(或)而不是&&(和)。

答案 2 :(得分:2)

if($pmData['sender_id'] == $userdata['id'] || $pmData['receiver_id'] == $userdata['id']){
  // Grant Access
}
else{
  // Deny Access
}

答案 3 :(得分:1)

我们假设变量名为$sender $receiver$user

if ($sender == $user || $receiver == $user) { allow(); }
else { forbid(); }

答案 4 :(得分:1)

如果我理解您的问题,您只需将&&(AND)替换为||(或者)

答案 5 :(得分:0)

这样想。 &安培;&安培;意思是“两者都必须满足条件”。 ||意思是“一个或另一个必须符合条件”。

有||就像在一个中有两个不同的if语句,&&就像在if语句中使用if语句来做某事。