valores retornar retornan que parametros funciones ejemplos array php count callback scope array-reduce

retornan - retornar valores de php a html



¿Cómo puedo incluir una variable dentro de una función de devolución de llamada? (1)

La sintaxis para capturar los valores principales se puede encontrar en la function .. use documentación en "Ejemplo # 3 heredando variables del alcance principal".

.. Heredar variables del ámbito primario [requiere el formulario ''uso'' y] no es lo mismo que usar variables globales .. El alcance principal de un cierre es la función en la que se declaró el cierre (no necesariamente la función a la que se llamó de).

La conversión del código original, con la ayuda del use , es entonces:

$n = 5; array_reduce($arr, function ($a, $b) use ($n) { return ($b > $n) ? ++$a : $a; });

Donde $n es "usado" desde el alcance léxico externo.

NOTA: en el ejemplo anterior, se proporciona una copia del valor y la variable en sí misma no está vinculada. Consulte la documentación sobre el uso de una referencia a una variable (por ejemplo, &$n ) para poder asignar y reasignar variables en el contexto principal.

Estoy tratando de obtener recuentos de valores de matriz mayores que n .

Estoy usando array_reduce() así:

$arr = range(1,10); echo array_reduce($arr, function ($a, $b) { return ($b > 5) ? ++$a : $a; });

Esto imprime el número de elementos en la matriz mayor que el 5 codificado duro.

¿Pero cómo puedo hacer 5 una variable como $n ?

Intenté introducir un tercer argumento como este:

array_reduce($arr, function ($a, $b, $n) { return ($b > $n) ? ++$a : $a; }); // ^ ^

E incluso

array_reduce($arr, function ($a, $b, $n) { return ($b > $n) ? ++$a : $a; }, $n); // ^ ^ ^

Ninguno de estos funciona ¿Me puede decir cómo puedo incluir una variable aquí?