Funzione array_walk

La funzione array_walk applica una funzione specificata a tutti gli elementi di un array. Restituisce true in caso di successo o false in caso di errore. Il primo parametro della funzione accetta l'array, il secondo - la callback.

Alla callback vengono passati due parametri. Come primo parametro va il valore dell'elemento dell'array, e come secondo - la chiave.

L'array passato alla funzione di per sé non viene modificato. Ma questo può essere ottenuto tramite il passaggio dell'elemento per riferimento.

Sintassi

phparray_walk(array|object &$array, callable $callback, mixed $arg = null): bool

Esempio

Analizziamo un array e visualizziamo le sue chiavi ed elementi:

php<?php
  $arr = ['a' => 1, 'b' => 2, 'c' => 3];
  
  array_walk($arr, function($elem, $key) {
    echo $key . ' ' . $elem . '<br>';
  });
?>

Risultato dell'esecuzione del codice:

php'a 1'
'b 2'
'c 3'

Esempio

Analizziamo un array e eleviamo i suoi elementi al quadrato:

php<?php
  $arr = ['a' => 1, 'b' => 2, 'c' => 3];
  
  array_walk($arr, function(&$elem, $key) {
    $elem = $elem ** 2;
  });
  
  var_dump($arr);
?>

Risultato dell'esecuzione del codice:

php['a' => 1, 'b' => 4, 'c' => 9]

Vedi anche

  • la funzione array_map,
    che applica una funzione agli elementi di un array
  • la funzione array_filter,
    che filtra un array
  • la funzione array_walk_recursive,
    che chiama ricorsivamente una funzione per gli elementi di un array
  • la funzione array_reduce,
    che riduce un array