ホームページ  >  記事  >  バックエンド開発  >  PHP で array_walk_recursive 関数を使用して多次元配列要素にコールバック関数を適用する方法

PHP で array_walk_recursive 関数を使用して多次元配列要素にコールバック関数を適用する方法

WBOY
WBOYオリジナル
2023-06-26 11:46:23729ブラウズ

PHP では、array_walk_recursive 関数を使用して、多次元配列内のすべての要素にコールバック関数を適用できます。この記事ではarray_walk_recursive関数の使い方を紹介します。

  1. 多次元配列とは

PHP では、配列を多次元にすることができます。つまり、1 つの配列に別の配列を含めることができます。たとえば、次の配列は 2 次元配列です。

$array = array(
    array('name' => 'john', 'age' => 20),
    array('name' => 'mary', 'age' => 25)
);
  1. array_walk_recursive 関数

array_walk_recursive 関数は、複数の要素内のすべての要素にコールバック関数を適用するために使用されます。次元配列。構文は次のとおりです。

array_walk_recursive ( array &$array , callable $callback [, mixed $userdata = NULL ] ) : bool

パラメータの説明:

  • $array: 処理される多次元配列
  • $callback: 配列に適用されるコールバック関数elements
  • $userdata: コールバック関数に渡されるオプションのユーザー データ

成功した場合は true を返し、それ以外の場合は false を返します。

  1. array_walk_recursive 関数の使用

array_walk_recursive 関数の使用例を次に示します。ユーザーの名前と年齢を含む多次元配列があり、各年齢に 10 を加算して、各ユーザーの名前と新しい年齢を出力したいとします。

function add_age(&$item, $key) {
    if ($key == 'age') {
        $item += 10;
    }
}

$array = array(
    array('name' => 'john', 'age' => 20),
    array('name' => 'mary', 'age' => 25)
);

array_walk_recursive($array, 'add_age');

foreach ($array as $key => $value) {
    echo $value['name'] . ' ' . $value['age'] . '
'; }

この例では、すべての年齢に 10 を加算するコールバック関数 add_age を定義します。次に、このコールバック関数を array_walk_recursive 関数に渡し、多次元配列を渡します。最後に、foreach ループを使用して、各ユーザーの名前と新しい年齢を出力します。

  1. 概要

array_walk_recursive 関数を使用すると、多次元配列内のすべての要素にコールバック関数を簡単に適用できます。これは、複数レベルの入れ子になった配列を扱う場合に非常に便利です。これにより、繰り返しコードを大量に記述する必要がなくなります。この関数を使用して、データのフィルタリング、変換などのさまざまな操作を完了できます。

以上がPHP で array_walk_recursive 関数を使用して多次元配列要素にコールバック関数を適用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。