¿Cuál es la diferencia entre array_map, array_walk y array_filter en PHP?
¡Hola a todos! Acabo de empezar a aprender PHP y no puedo entender la diferencia entre las funciones array_map, array_walk y array_filter. Parece que todas aceptan un callback y lo aplican a un array. Pero cuando intento usarlas en código real, los resultados son diferentes o simplemente no sé cuál elegir.
Por ejemplo, tengo un array de números:
```php
$numbers = [1, 2, 3, 4, 5];
```
Quiero:
1. Multiplicar cada número por 2.
2. Mostrar cada número con el prefijo "Number: ".
3. Filtrar solo los números pares.
Probé array_map:
```php
$doubled = array_map(function($n) { return $n * 2; }, $numbers);
```
Parece funcionar, devuelve un nuevo array. ¿Pero array_walk también se puede usar? ¿O array_filter?
Probé array_walk:
```php
array_walk($numbers, function(&$n) { $n *= 2; });
```
Ahora $numbers ha cambiado. ¿Y si solo quiero mostrar, no modificar?
Y array_filter:
```php
$even = array_filter($numbers, function($n) { return $n % 2 == 0; });
```
Aquí parece
No answers yet.
Inicia sesión para dejar una respuesta
Blogs
Las mejores IDE y herramientas para desarrollo C++: nivel avanzado
Funciones Serverless en Java: AWS Lambda nivel avanzado
Los 10 mejores frameworks de Java para desarrollo web: nivel avanzado
.First vs .FirstOrDefault en C#: ¿Cuándo elegir cuál?