ホームページ > バックエンド開発 > PHPチュートリアル > PHPの配列関数array_walk()の使い方を詳しく解説

PHPの配列関数array_walk()の使い方を詳しく解説

WBOY
リリース: 2016-06-20 13:02:21
オリジナル
1247 人が閲覧しました

定義と使用法 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 の値は Dog

c の値は 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 )


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート