Saludos. Esta es una funcion que comprueba si se pasaron todos los datos de un formulario con el metodo post.
Código PHP:
Ver originalif (filled_out($_POST))
//codigo a realizar
.
.
.
Pero hay algo que no comprendo del "foreach" o del "condicional if". Y es que cuando cuando le mando un array vacio, $a=array(), con la funcion count obtengo que el numero de elementos es == 0. Pero cuando quiero controlar esa condicion en el IF, ($contador == 0), no me lo toma como verdadero.
Código PHP:
Ver originalfunction filled_out($form_vars)
{
// comprueba que cada variable tiene un valor
$contador = count($form_vars); foreach ($form_vars as $key => $value)
{
if (!isset($key) || ($key === "") || ($value === "") || ($contador == 0) ))) {
echo "falso";
return false;
}
}
echo "True";
return true;
}
echo"<br />";
echo "tamaño: ".(count($a))."<br />"; //arroja 0 echo filled_out($a); //arroja True
La opción que utilice para que funcione es poner el condicional IF, ($contador == 0), fuera del loop foreach y en ese caso si funciono. Pero alguien podria explicarme, por favor, porque sucede este comportamiento en el condicional
IF dentro del loop
FOREACH ?. Gracias.