ホームページ >バックエンド開発 >PHPチュートリアル >PHPの配列関数array_walk()の使い方を詳しく解説
定義と使用法 array_walk() 関数は、配列内の各要素にコールバック関数を適用します。
成功した場合は TRUE を返し、そうでない場合は FALSE を返します。通常、関数は 2 つのパラメータを受け入れます。配列パラメータの値が最初のパラメータとして使用され、キー名が 2 番目のパラメータとして使用されます。
オプションのパラメータ userdata が指定されている場合、それは 3 番目のパラメータとしてコールバック関数に渡されます。関数が指定された引数よりも多くの引数を必要とする場合、array_walk() が関数を呼び出すたびに E_WARNING レベルのエラーが生成されます。
これらの警告は、array_walk() 呼び出しの前に PHP のエラー演算子 @ を付けるか、error_reporting() を使用することで抑制できます。構文 array_walk(array, function, userdata...) パラメータ 説明 配列が必要です。配列を指定します。必要な機能。ユーザー定義関数の名前。ユーザーデータはオプションです。ユーザーが入力した値は、コールバック関数のパラメータとして使用できます。ヒントとコメント ヒント: 関数には 1 つ以上のパラメーターを設定できます。注: コールバック関数が配列内の値に直接作用する必要がある場合は、コールバック関数の最初のパラメータを参照として指定できます: &$value。 (例 3 を参照) 注: キー名とユーザーデータを関数に渡す機能は、PHP 4.0 の新機能です。
例 1
<span style="font-size: 14px;"><?php</span><br />function myfunction($value, $key) {<br />echo "The key $key has the value $value<br />";<br />}<br /><br />$a = array("a" => "Cat", "b" => "Dog", "c" => "Horse");<br />array_walk($a, "myfunction");
出力:
キー a の値は Cat
キー b の値はDogキー c の値は Horse
例 2
1 つのパラメーター:
<span style="font-size: 14px;"><?php</span><br />function myfunction($value, $key, $p) {<br />echo "$key $p $value<br />";<br />}<br /><br />$a = array("a" => "Cat", "b" => "Dog", "c" => "Horse");<br />array_walk($a, "myfunction", "has the value");<br /><p>?><span style="font-size: 14px;">
出力:
a の値は Cat
b の値は Dogc の値は Horse
例 3
配列要素の値を変更します (&$value に注意してください): (これはより頻繁に使用されます!)
<span style="font-size: 14px;"><?php</span><br />function myfunction(&$value, $key) {<br />$value = "Bird";<br />}<br /><br />$a = array("a" => "Cat", "b" => "Dog", "c" => "Horse");<br />array_walk($a, "myfunction");<br />print_r($a);
出力:
配列 ( [a] => Bird [b] => Bird [c] => Bird )