循环通过$ _POST。循环结束后如何停止?

时间:2014-10-23 12:19:25

标签: php function oop return

我希望当每个语句停止循环时,此函数返回false。如果它不是空的话,那就是真的。

function check_empty($post_array){
        $items_in_array = count($post_array); //array length
        echo $items_in_array;
        foreach($post_array as $key=>$value){
            if(empty($value)){
                echo $key . " field cannot be left empty" . "</br>";
            }
        }
        return false;
    }

注意:如果我在foreach中返回false,它将在第一次迭代时停止,我希望它完成迭代,并且只在它迭代了该数组中的所有值时停止($ post_array)

6 个答案:

答案 0 :(得分:3)

function check_empty($post_array){
    $items_in_array = count($post_array); //array length
    echo $items_in_array;
    if($items_in_array < 1){
         echo 'no data submitted';
         return false;
    }
    $errors = '';
    foreach($post_array as $key=>$value){
        if(empty($value)){
            $errors.= $key . " field cannot be left empty" . "</br>";
        }
    }
    if($errors){
         echo $errors;
         return false;
    }
    return true;
}

你问的不明显,但上面的第一个空值返回false。如果未发现空值,则该函数将返回true

答案 1 :(得分:1)

要停止,您可以使用break;return;

如果你想停止那次尝试,请打破 如果你想退出循环并运行compleatley函数,则返回。

答案 2 :(得分:1)

function check_empty($post_array){
        $items_in_array = count($post_array); //array length
        echo $items_in_array;
        $rtVl = false
        foreach($post_array as $key=>$value){
            if(empty($value)){
                echo $key . " field cannot be left empty" . "</br>";
            }
            $rtVl = true;
        }
        return $rtVl;
}

答案 3 :(得分:1)

  

如果我在foreach中返回false,它将在第一次迭代时停止,我希望它完成迭代并且仅在迭代所有值时停止

因此,空值将被视为某种“错误”,并且一个这样的错误应该足以使函数返回false?

function check_empty($post_array){
    $no_empty_fields = true;
    foreach($post_array as $key=>$value){
        if(empty($value)){
            $no_empty_fields = false;
            // plus whatever additional handling you need here
        }
    }
    return $no_empty_fields;
}

答案 4 :(得分:0)

您可以使用breakreturn false语句退出循环。

  foreach($post_array as $key=>$value){
        if(empty($value)){
            echo $key . " field cannot be left empty" . "</br>";
            break;//or return false;
        }
    }

答案 5 :(得分:0)

回归或休息;当你的条件得到满足时。

相关问题