替换php数组中的空值



一个常见的问题,但其他答案并不总是很清楚,所以如果在其他地方出现了一百万次,我深表歉意。

简单;我的数组中的零值从查询中返回,我想循环并用零替换它们。我一直在尝试以下代码;

$stat = $db->getUserStats($id, $code, $mod1, $mod2);    
        foreach ($stat as $key => $value) {
            if ($value == null) {
                $value = 0;
            }
        };

使用参考:

foreach ($stat as $key => &$value) {

您当前在if ($value == null)中拥有的$value不是实际数组值,而是foreach创建的副本。

您还应使用严格的null检查:if ($value === null)

您应该在foreach循环之后删除参考。(请参阅foreach文档中的警告框。(


实现此目的的另一种可能的方法是在查询中使用表达式返回零而不是nulls。这会根据您正在使用的数据库而有所不同。

相关内容

  • 没有找到相关文章

最新更新