我经常喜欢这样写判断,屡试不爽
if ($fans = Fans::findOne(['member_name' => $model['mobile']])) {
// 可以使用 $fans
}
直到遇到这个坑:
if ($fans = Fans::findOne(['member_name' => $model['mobile']]) && !empty($model['nickname'])) {
// $fans 为 true
}
结果 $fans
打印出来是 true
,这才反应过来,可能是 PHP 执行顺序有关系。
改成
if (($fans = Fans::findOne(['member_name' => $model['mobile']])) && !empty($model['nickname'])) {
// 可以使用 $fans
}
正常!
本文由 forecho 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。