Contar campos llenos PHP

Hola:

Cuando necesites pasar más de un valor que estén relacionados, es mejor usar un array desde el formulario:

<form action="script.php" method="post">
  <input type="text" name="valores[]" />
  <input type="text" name="valores[]" />
  <input type="text" name="valores[]" />
  <input type="text" name="valores[]" />
  <input type="submit" value="Enviar" />
</form>

script.php
<?php
  // Comprueba que se haya pasado al menos un valor
  if(isset($_POST['valores'] && !empty($_POST['valores'])) {
    $valores = $_POST['valores'];

    // max devuelve el valor mas alto de un array, mientras que min
    // devuelve el más bajo
    $mayor = max($valores);
    $menor = min($valores);
    $valores_no_vacios = 0;

    foreach($valores as $valor) {
      if(!empty($valor) && is_numeric($valor)) // Solo si no esta vacío y es un número (is_numeric)
        $valores_no_vacios++;
    }

    echo "Mínimo: $min<br />Máximo: $max<br />No vacíos: $valores_no_vacios";
  }
?>

De esta forma podrás tener muchos campos input, sin necesidad de saber el total. Incluso podrías crearlos dinámicamente:

<form action="script.php" method="post">
  <?php
    for($i = 0; $i < 10; $i++) {
      echo "<label>Campo " . ($i+1) . "</label> <input type='text' name='valores[]' /><br />";
    }
</form>
hola, muy agradecido por tu respuesta, tu codigo excelente solo algunas correcciones y muy bien, el error del min aun esta, haciendo unas correcciones y navegando encontre esto
<?php 
function min_mod () { 
  $args = func_get_args(); 
  
  if (!count($args[0])) return false; 
  else { 
    $min = false; 
    foreach ($args[0] AS $value) { 
      if (is_numeric($value)) { 
        $curval = floatval($value); 
        if ($curval < $min || $min === false) $min = $curval; 
      } 
    } 
  } 
  
  return $min;   
} 
?>

solo hay que agregarle a la funcion min --> min_mod y queda ok, olvide agregar en mi peticion anterior que aparte de contar necesito saber cuantos, por ejemplo personas de 0 a 10 , de 11 a 20, de 21 a etc etc, todos estos datos estan ingresados en el array, no se si estoy bien al usar if con mayor o menor igual o el for, por fa si supieras como puedo hacer esto ya me ayudarias en todo o darme una idea por que no se con que comenzar. Gracias
saber cuantos, por ejemplo personas de 0 a 10 , de 11 a 20, de 21 a etc etc, todos estos datos estan ingresados en el array

Todo depende de lo cómo estés usando el formulario... si es el que mostraste en el primer mensaje, entonces simplemente compara con if...else como has mencionado :).
hola, lo he cambiado en arrays como me indicaste, de esa manera, como podria hacer esas comparaciones?
Depende de lo que intentes hacer. En este momento, solo sé que tienes un formulario con varios campos, pero no sé si están todos relacionados entre si.

De cualquier forma, un array en un formulario llega al script.php así:

<form action="script.php">
  <input type="text" name="array1[]" />
  <input type="text" name="array2[]" />
  <input type="text" name="array3[]" />
  <!-- Etcétera -->
</form>

script.php
<?php
  $array1 = $_POST['array1']; // Si usas method="get" en el form, entonces cambia $_POST por $_GET
  // Luego lo recorres así:
  foreach($array1 as $key => $value) {
    echo "$key => $value<br />";
  }

  $array2 = $_POST['array2'];
  // Lo recorres nuevamente... (esto se simplifica con una función, pero sirve de ejemplo)
  foreach...

Incluso puedes crear arrays con nombres o multidimensionales:

<form>
  <input type="text" name="multi[subarray1][]" />
</form>

<?php
  $multi = $_POST['multi'];
  $sa1 = $multi['subarray1'];

  foreach($sa1 as $key => $value)
    echo "$key => $value<br />";
muchas gracias skaparate, que bueno que existan personas como tu ayudando en este foro :D
si, el script salio perfecto solo algunas cositas que dependieron de mi que olvide hacerlas para que se vean mucho mejor pero el script quedo muy bueno, de nuevo gracias :D