對陣列中的每個成員遞迴地應用使用者函式

array_walk_recursive

(PHP 5, PHP 7, PHP 8)

array_walk_recursive對陣列中的每個成員遞迴地應用使用者函式

說明

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

將使用者自定義函式 callback 應用到 array 陣列中的每個單元。本函式會遞迴到更深層的陣列中去。

參數

array

輸入的陣列。

callback

典型情況下 callback 接受兩個參數。array 參數的值作為第一個,鍵名作為第二個。

注意:

如果 callback 需要直接作用於陣列中的值,則給 callback 的第一個參數指定為引用。這樣任何對這些單元的改變也將會改變原始陣列本身。

arg

如果提供了可選參數 arg,將被作為第三個參數傳遞給 callback

返回值

成功時返回 true, 或者在失敗時返回 false

範例

示例 #1 array_walk_recursive() 例子

<?php
$sweet 
= array('a' => 'apple''b' => 'banana');
$fruits = array('sweet' => $sweet'sour' => 'lemon');

function 
test_print($item$key)
{
    echo 
"$key holds $item\n";
}

array_walk_recursive($fruits'test_print');
?>

以上例程會輸出:

a holds apple
b holds banana
sour holds lemon

注意上例中的鍵 'sweet' 並沒有顯示出來。任何其值為 array 的鍵都不會被傳遞到回撥函式中去。

參見

  • array_walk() - 使用使用者自定義函式對陣列中的每個元素做回撥處理

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *