関数 array_walk

関数 array_walk は、指定された 関数を配列のすべての要素に適用します。 成功した場合は true を返し、 エラーが発生した場合は false を返します。 最初のパラメータとして配列を取り、 2番目のパラメータとしてコールバックを受け取ります。

コールバックには2つのパラメータが渡されます。 最初のパラメータは配列要素の値、 2番目のパラメータはキーです。

関数に渡された配列自体は 変更されません。しかし、これは 参照渡しで要素を渡すことで実現できます。

構文

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

例

配列をループ処理し、 そのキーと要素を出力してみましょう:

php<?php
  $arr = ['a' => 1, 'b' => 2, 'c' => 3];
  
  array_walk($arr, function($elem, $key) {
    echo $key . ' ' . $elem . '<br>';
  });
?>

コードの実行結果:

php'a 1'
'b 2'
'c 3'

例

配列をループ処理し、 その要素を2乗してみましょう:

php<?php
  $arr = ['a' => 1, 'b' => 2, 'c' => 3];
  
  array_walk($arr, function(&$elem, $key) {
    $elem = $elem ** 2;
  });
  
  var_dump($arr);
?>

コードの実行結果:

php['a' => 1, 'b' => 4, 'c' => 9]

関連項目