如何将数组中的所有NULL值转换为空字符串?

时间:2017-05-21 09:22:25

标签: php

我有一个名为$whereClauses的数组,我试图将数组中的任何NULL值转换为空字符串。我在stackoverflow上从previous question找到了这个代码,但是我无法弄清楚如何将它应用到我的数组中。任何帮助将不胜感激。

我已更新代码以显示我在做什么。

foreach ($array as $key => $value) {
    if (is_null($value)) {
         $array[$key] = "";
    }
}

//更新了代码

 if (isset($_POST['btn'])) {


    $whereClauses = array(); 
      if (! empty($_POST['location'])) $whereClauses[] ="(location ='".mysqli_real_escape_string($db_conx,$_POST['location'])."')"; 

    $whereClauses[] ="(activated='1')";


        //Convert Null values to empty strings
    foreach ($whereClauses as $key => $value) {
        if (is_null($value)) {
             $whereClauses[$key] = "";
        }

    }
    var_dump($whereClauses);

    }

输出:

array(2) { [0]=> string(18) "(location ='null')" [1]=> string(15) "(activated='1')" }

2 个答案:

答案 0 :(得分:1)

代码剪断似乎是正确的方向,没有看到你的代码,我认为如果你用数组的名称替换$ array,它应该工作,就像这样:

foreach ($whereClauses as $key => $value) {
    if (is_null($value)) {
         $whereClauses[$key] = "";
    }
}

您遇到了什么问题? 您的数组是什么样的,您可以发布示例值吗?

答案 1 :(得分:0)

将$ array替换为您的数组名称:

foreach ($whereClauses as $key => $value) {
    if (is_null($value)) {
         $whereClauses[$key] = "";
    }
}