如何在循环中更改关联数组值

时间:2017-07-11 13:01:55

标签: php sql associative-array

我有来自Select的这个assoc数组,它只有一行和8个cols。 我想遍历每个列值并检查它是否为空,如果是,则将其更改为" NULL"。

$res = mysqli_query($mysql, $sql);

$res = mysqli_fetch_array($res, MYSQLI_ASSOC);

我在某个地方找到了它,但它不起作用。

foreach ($res as $key => $value) {
    if ($res[ucfirst($key)]=="") {
        $res[ucfirst($key)] = "NULL";
        unset($res[$key]);
    }
}

2 个答案:

答案 0 :(得分:1)

尝试

$res = array_map(function ($value) {
    if ($value == "") {
        return "NULL";
    }

    return $value;
}, $res);

{{1}}

供参考,见:

答案 1 :(得分:0)

你试试这样:

function is_not_null($val){
    return !is_null($val);
}
$array = array_filter($array, 'is_not_null');

您可以轻松地将其转换为检查空,数字,字符串等。