如标题中所述,使用
之间有什么区别if(isset($a, $b)){
//execute...
}
和
if(isset($a) && isset($b)){
//execute...
}
您认为哪一个更好?
答案 0 :(得分:2)
如果您打算稍后使用empty()
而不是isset()
,则会有所不同。
isset()
允许使用逗号分隔值,而empty()
则不允许。
因此,您需要在empty()
上使用单独的条件,如果将来是这种情况。
但要回答这个问题,没有区别;两者都有效并且工作方式相同。
您认为哪一个更好?
这完全是出于偏好。
但是,如果一个或另一个失败,那么在不同的条件下检查两者。在使用此方法isset()
时,需要设置两者才能使if(isset($a, $b))
正常工作。
答案 1 :(得分:2)
如php isset documentation中所述:
如果提供了多个参数,则isset()将仅返回TRUE 如果设置了所有参数。评估从左到右 并在遇到未设置的变量时立即停止。
因此功能没有区别。
我个人更喜欢第一个概念,因为它产生的代码略短。