Puedes usar
func_num_args para obtener el número de argumentos de tu función, por ejemplo:
Código PHP:
Ver originalfunction foo() {
echo $total;
}
foo($var1, $var2); // echo 2
foo($var1, $var2, $var3); // echo 3
foo($var1, $var2, $var3, $var4); // echo 4
Para recuperar los argumentos dentro de la función usas
func_get_args