php条件判断中同时有"与、或",优先级是怎样的?
例如:
if ($article->user_id == Auth::id() && $article->status==0 || $article->expired_at < Carbon::now())
{
$article->delete();
return back();
}
if语句中有3个条件:
$article->user_id == Auth::id() //文章属于该登录用户
$article->status==0 //文章的status字段为0
$article->expired_at < Carbon::now() //文章已过期
我想表达的是第1个条件要满足,第2、3个条件只要满足一个。
问题就是应该怎样写这个条件语句,上面if()
代码中那样写对吗?
根据PHP手册:运算符优先级页面显示,优先级是
与
>或
;所以题主的代码可以这样写:
if
的判断语句不要写得太长,阅读性不好;参考手册
建议2、3个条件用括号扩起
雷雷
与的优先级大于或
雷雷