array_walk_recursive
配列内の各メンバーにユーザー機能を再帰的に適用する
array_walk_recursive()
関数は、配列内の各要素にユーザー定義の関数を適用します。関数では、配列のキー名とキー値はパラメーターです。
この関数とarray_walk()
関数の違いは、より深い配列を操作できることです(1つの配列には別の配列が含まれています)。
配列内の各要素にユーザー定義の関数を適用します。
<?php 機能myfunction ( $ value 、 $ key ) { echo "キー$キーの値は$ value 。<br>" ; } $ a1 = array ( "a" => "red" 、 "b" => "緑" ) ; $ a2 = array ( $ a1 、 "1" => "blue" 、 "2" => "Yellow" ) ; array_walk_recursive ( $ a2 、 "myfunction" ) ; ?>
自分で試してみてください
array_walk_recursive ( array 、 myfunction 、 parameter ... )
パラメーター | 説明する |
---|---|
配列 | 必須。配列を指定します。 |
myFunction | 必須。ユーザー定義関数の名前。 |
userdata 、... | オプション。ユーザー定義関数のパラメーターを指定します。この関数を好きなだけ多くのパラメーターを渡すことができます。 |
array_walk()
関数と同様に、 array_walk_recursive()
関数は、arrayの各要素にコールバック関数を適用します。違いは、元の配列の要素も配列である場合、コールバック関数は再帰的に、つまり再帰的により深い配列に呼ばれることです。
通常、 MyFunctionは2つのパラメーターを受け入れます。配列パラメーターの値は最初で、キー名は2番目です。オプションのパラメーターuserDataが提供されると、3番目のパラメーターとしてコールバック関数に渡されます。
コールバック関数が配列内の値に直接動作する必要がある場合、コールバック関数の最初のパラメーターを参照として指定して、これらのユニットの変更が元の配列自体も変更されるようにすることができます。