因为后者如果没有值的话会出现if(){这样的情况,if条件为空就报错了。前者还有个isset,返回的是true或false,if(true/false){这样在没有这些值的时候也不至于报错。可能是这样。