array_walk_recursive

(PHP 5, PHP 7, PHP 8)

array_walk_recursiveAplica um função do usuário recursivamente para cada membro de um array

Descrição

array_walk_recursive(array|object &$array, callable $callback, mixed $arg = null): true

Aplica a função callback definida pelo usuário para cada elemento do array array. Esta função irá recursar em arrays mais profundos.

Parâmetros

array

O array de entrada.

callback

Tipicamente, callback usa dois parâmetros. O valor do parâmetro array sendo o primeiro, e a chave/índice o segundo.

Note:

Se callback precisa trabalhar com atuais valores da array, especifique o primeiro parâmetro da callback com uma referência. Então, as modificações feitas para estes elementos serão feitas no próprio array original.

arg

Se o parâmetro opcional arg for fornecido, ele será passado como o terceiro parâmetro para o callback.

Valor Retornado

Sempre retorna true.

Registro de Alterações

Versão Descrição
8.2.0 O tipo do retorno agora é true; anteriormente, era bool.

Exemplos

Example #1 Exemplo da array_walk_recursive()

<?php
$doce = array('a' => 'maçã', 'b' => 'banana');
$frutas = array('doce' => $doce, 'azedo' => 'limão');

function test_print($item, $chave)
{
    echo "$chave contém $item\n";
}

array_walk_recursive($frutas, 'test_print');
?>

O exemplo acima produzirá:

a contém maçã
b contém banana
azedo contém limão

Pode-se notar que a chave 'doce' nunca é exibida. Qualquer chave que contém um array não será passada para a função.

Veja Também

  • array_walk() - Aplica uma determinada função em cada elemento de um array