Я хочу, чтобы эта функция возвращала 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;
}
Примечание: если я верну false внутри foreach, он остановится прямо на первой итерации, я хочу, чтобы он завершил итерацию и остановился только после того, как он перебрал все значения в этом массиве ($ post_array)
если я верну false внутри foreach, он остановится прямо на первой итерации, я хочу, чтобы он завершил итерацию и остановился только после того, как он перебрал все значения
Таким образом, пустое значение будет считаться «ошибкой» некоторого вида, и одной такой ошибки должно быть достаточно, чтобы функция вернула 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;
}
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
Для остановки вы можете использовать либо break;
или же return;
сломаться, если вы хотите остановить это изменение
вернитесь, если вы хотите выйти из цикла и завершить функцию.
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;
}
ты можешь использовать break
или же return false
Заявление о выходе из цикла.
foreach($post_array as $key=>$value){
if(empty($value)){
echo $key . " field cannot be left empty" . "</br>";
break;//or return false;
}
}
Возврат или перерыв; когда ваши условия будут выполнены.