現在の位置: ホーム> 関数カテゴリ一覧> array_walk

array_walk

ユーザー定義の関数を使用して、配列内の各要素にコールバックを作成します
名前:array_walk
カテゴリ:配列
対応言語:php
一言説明:配列内の各メンバーにユーザー機能を適用します。

定義と使用法

array_walk()関数は、配列内の各要素にユーザー定義の関数を適用します。関数では、配列のキー名とキー値はパラメーターです。

注:ユーザー定義関数の最初のパラメーターを参照:&$値として指定することにより、配列要素の値を変更できます(例2を参照)。

ヒント:より深い配列(1つの配列に別の配列が含まれる)を操作するには、 array_walk_recursive()関数を使用します。

例1

配列内の各要素にユーザー定義の関数を適用します。

 <?php
機能myfunction ( $ value 、 $ key )
{
echo "キー$キーには値$ value <br>"があります。
}
$ a = array ( "a" => "red" 、 "b" => "green" 、 "c" => "blue" ) ;
array_walk ( $ a 、 "myfunction" ) ;
?>

自分で試してみてください

例2

パラメーターを設定します:

 <?php
機能myfunction ( $ value 、 $ key 、 $ p )
{
echo " $ key $ p $ value <br>" ;
}
$ a = array ( "a" => "red" 、 "b" => "green" 、 "c" => "blue" ) ;
array_walk ( $ a 、 "myfunction" 、 "has value" )) ;
?>

自分で試してみてください

例3

配列要素の値を変更します(注&$値):

 <?php
機能myfunction ( & $ value 、 $ key )
{
$ value = "Yellow" ;
}
$ a = array ( "a" => "red" 、 "b" => "green" 、 "c" => "blue" ) ;
array_walk ( $ a 、 "myfunction" ) ;
print_r ( $ a ) ;
?>

自分で試してみてください

文法

array_walk ( arraymyfunctionuserdata ... )
パラメーター 説明する
配列 必須。配列を指定します。
myFunction 必須。ユーザー定義関数の名前。
userdata 、... オプション。ユーザー定義関数のパラメーターを指定します。この関数を好きなだけ多くのパラメーターを渡すことができます。

説明します

array_walk()関数は、配列内の各要素にコールバック関数を適用します。成功した場合はtrueを返し、それ以外の場合はfalseを返します。

通常、 MyFunctionは2つのパラメーターを受け入れます。配列パラメーターの値は最初で、キー名は2番目です。オプションのパラメーターuserDataが提供されると、3番目のパラメーターとしてコールバック関数に渡されます。

MyFunction関数が与えられたよりも多くのパラメーターを必要とする場合、Array_Walk()がmyFunctionを呼び出すたびに、e_warningレベルのエラーが生成されます。これらの警告はarray_walk() callの前にphpのエラーoperator @を追加するか、 error_reporting()を使用して抑制できます。

注:コールバック関数が配列内の値に直接動作する必要がある場合、コールバック関数の最初のパラメーターを参照として指定できます:&$ value。 (例3を参照)

注:キー名とuserDatamyFunctionに渡すことは、PHP 4.0に新たに追加されます。

類似の関数
  • 配列から重複した値を削除します array_unique

    array_unique

    配列から重複した値を削除します
  • 配列を逆に並べ替え、インデックス関係を維持します arsort

    arsort

    配列を逆に並べ替え、インデックス関係を維
  • キー名の比較を使用して、配列の違いセットを計算する array_diff_key

    array_diff_key

    キー名の比較を使用して、配列の違いセット
  • キー名で配列を逆に並べ替えます krsort

    krsort

    キー名で配列を逆に並べ替えます
  • 1つ以上のセルを配列の端に押し込みます(スタックする) array_push

    array_push

    1つ以上のセルを配列の端に押し込みます(
  • 配列の逆並べ替え rsort

    rsort

    配列の逆並べ替え
  • キー名の比較を使用して配列の交差点を計算する array_intersect_key

    array_intersect_key

    キー名の比較を使用して配列の交差点を計算
  • 「ナチュラルソート」アルゴリズムを使用して、配列ケースに依存しない文字を並べ替えます natcasesort

    natcasesort

    「ナチュラルソート」アルゴリズムを使用し
人気記事(にんききじ)