php empty判断’0’与”

作者:

问题

今天线上出现一个bug, 用户昵称是’0’的,展示为空

原因

原因是以下判断逻辑:

$name = !empty($userInfo['name']) ? $userInfo['name'] : ''

很随手写的逻辑,但却隐藏着一个大坑。

当$userInfo[‘name’] = ‘0’时,该语句的结果 $name = ”, bug就这么出现了。

解决

代码修改:

$name = isset($userInfo['name']) ? $userInfo['name'] : ''

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注