如果$ _POST的任何值为空

时间:2015-02-20 16:50:11

标签: php arrays post input

所以我知道如何使用if空组合错误检查空的post值,但是如果post数据是一个数组并且需要应用于每个值,怎么能这样做呢?

示例:

foreach (array($_POST['post_values']) as $test) {print_r($test); echo'<br />';};

,其中

<input name="post_values[value_1]">
<input name="post_values[value_2]"> etc.

我需要能够说,如果某个值没有发布到任何输入,那么该特定输入=零,而不对输入本身应用默认值。

因此,如果value_1 = 5且value_2 =空,则数组将显示为5和0。

提前致谢,

3 个答案:

答案 0 :(得分:3)

您可以这样做:

for ($i = 0; $i < count($_POST['post_values']); $i++){
    if (empty($_POST['post_values'][$i])){
        $_POST['post_values'][$i] = 0;
    }
}

答案 1 :(得分:1)

这会有用吗?

foreach ($_POST['post_values'] as $key=>$test) {
    if($test==""){
        $_POST["post_values"][$key]=0;
    }
};
print_r($_POST['post_values']);

答案 2 :(得分:0)

您可以执行以下操作。在您的外观中,您可以检查值

$ value =(trim($ test)!=&#34;&#34;?$ test:0);

echo $ value; //如果$ test为空,那么它将为0,否则将获得$ test的值。