PHP 配列の操作方法をまだ探している場合は、この記事を見逃してはなりません。これは最も包括的な PHP 配列操作方法です。皆様のお役に立てれば幸いです。
1.基本機能 配列のキー名と値 array_values($arr); 配列の値を取得します。 array_keys($arr); 配列のキー名を取得します。 array_flip($arr); 配列内の値はキー名と置き換えられます(重複がある場合、前の値は後の値で上書きされます) in_array("apple",$arr);配列内のリンゴを取得します array_search("apple",$arr); 配列内の apple を取得し、存在する場合はキー名を返します。 array_key_exists("apple",$arr); 指定されたキー名が配列内に存在するかどうかを取得します。 isset($arr[apple]): 指定されたキー名が配列に存在するかどうかを取得します 配列への内部ポインタ current($arr); 配列内の現在のセルを返します。 pos($arr); 配列内の現在のユニットを返します。 key($arr); 配列内の現在のユニットのキー名を返します。 prev($arr); 配列内の内部ポインタを 1 ビット巻き戻します。 next($arr); 配列内の内部ポインタを 1 つ前に移動します。 end($arr); 配列内の内部ポインタを最後の要素に指します。 reset($arr; 配列内の内部ポインタを最初の要素にポイントします each($arr); は、配列の現在の要素のキー名/値の構築された配列を返し、配列ポインターを 1 ビット進めます。 list($key,$value)=each($arr); 配列の現在の要素のキー名と値を取得します 配列と変数間の変換 extract($arr); は、配列内の要素を変数に変換し、それらを現在のファイルにインポートするために使用されます。キー名は変数名として使用され、値は変数値として使用されます。 注: (2 番目のパラメータは非常に重要です。使用方法についてはマニュアルを参照してください) 使用法 echo $a; Compact(var1,var2,var3); 指定された変数名で配列を作成します 2. 配列の分割と埋め込み 配列のセグメント化 array_slice($arr,0,3); 配列からセグメントを取り出すことができます。この関数はキー名を無視します。 array_splice($arr,0,3,array("black","maroon")); 前の関数との違いは、返されたシーケンスが元の配列から削除されることです 。複数の配列を分割する array_chunk($arr,3,TRUE); 配列を複数の配列に分割できます。TRUE は元の配列のキー名を保持することを意味します 配列のパディング array_pad($arr,5,'x'); 指定された長さまで配列をパディングします 3. 配列とスタック array_push($arr,"apple","pear"); 1 つ以上の要素を配列スタックの最後にプッシュし (プッシュ)、スタックにプッシュされた要素の数を返します。 array_pop($arr); 配列スタックの最後の要素をポップします 4. 配列とキュー array_shift($arr); 配列の最初の要素が移動され、結果として返されます (配列の長さは 1 減り、他の要素は 1 つ前に移動され、数値キー名は 0 に変更されます)。テキストキー名は変更されません) array_unshift($arr,"a",array(1,2));配列の先頭に 1 つ以上の要素を挿入します 5. コールバック関数 array_walk($arr,'function','words');ユーザー関数を使用して配列内の各メンバーを処理します (3 番目のパラメーターはコールバック関数関数に渡されます)。 array_mpa("function",$arr1,$arr2); は複数の配列を処理できます (2 つ以上の配列を使用する場合、それらの長さは同じである必要があります) array_filter($arr,"function"); コールバック関数を使用して、配列内の各要素をフィルタリングします。コールバック関数が TRUE の場合、配列の現在の要素とそのキー名が返されます。配列は変更されません。 array_reduce($arr,"function","*");単一値関数に変換します (* は配列の最初の値です) 6. 配列のソート 配列を要素の値で並べ替える sort($arr); 小さいものから大きいものへ並べ替え (2 番目のパラメーターは並べ替え方法です)、キー名の配列の並べ替えは無視されます。 rsort($arr); キー名の配列ソートを無視して、大きいものから小さいものへソートします (2 番目のパラメーターはソート方法です)。 usort($arr,"function"); は、ユーザー定義の比較関数を使用して配列内の値を並べ替えます (関数には 2 つのパラメーターがあり、0 は等しいことを意味し、正の数は最初の値が大きいことを意味します) 2 番目の値、負の数は 2 番目の値が 2 番目の値より大きい、2 番目の値が 2 番目の値より小さいことを意味します) キー名を無視した配列のソート。 asort($arr); 小さいものから大きいものへと並べ替え (2 番目のパラメーターは並べ替え方法です)、キー名の配列の並べ替えを保持します。 arsort($arr); 大きいものから小さいものへ並べ替え (2 番目のパラメーターは並べ替え方法です)、キー名の配列の並べ替えを保持します。 uasort($arr,"function"); は、ユーザー定義の比較関数を使用して配列内の値を並べ替えます (関数には 2 つのパラメーターがあり、0 は等しいことを意味し、正の数は最初の値が大きいことを意味します) 2 番目の値、負の数は最初の値が 2 番目の値より大きいことを意味します) キー名を保持した配列の並べ替え 配列をキー名で並べ替えます ksort($arr); キー名で正の順序で並べ替えます。 krsort($arr); キー名で逆順に並べ替えます。 uksort($arr,"function"); は、ユーザー定義の比較関数を使用して配列内のキー名を並べ替えます (関数には 2 つのパラメーターがあり、0 は等しいことを意味し、正の数は最初の値が 2 番目の値より大きいことを意味します) 1、負の数は、最初の値が 2 番目の値より小さいことを意味します) 自然な選別方法 natsort($arr); 自然なソート (キー名を無視) natcasesort($arr);自然なソート (大文字と小文字を無視、キー名を無視) 7. 配列の計算 配列要素の合計 array_sum($arr); 配列内のすべての要素に対して合計演算を実行します 配列のマージ array_merge($arr1,$arr2); 2 つ以上の配列をマージします (同じ文字列キー名、後者が前のキー名を上書きします、同じ数値キー名、後者は上書きされませんが、末尾に追加されます) ) "+"$arr1+$arr2; 同じキー名の場合、後者のみが保持されます。 array_merge_recursive($arr1,$arr2); 再帰的マージ操作では、配列内に同じ文字列キー名がある場合、これらの値は 1 つの配列にマージされます。値自体が配列の場合、対応するキー名に従って別の配列にマージされます。配列が同じ配列キー名を持つ場合、後の値は元の値を上書きせず、末尾に追加されます 配列の違い array_diff($arr1,$arr2); 差分結果の配列を返します。 array_diff_assoc($arr1,$arr2,$arr3); は差分セットの結果の配列を返し、キー名も比較されます 配列の交差 array_intersect($arr1,$arr2); 交差結果の配列を返します。 array_intersect_assoc($arr1,$arr2); は交差結果の配列を返し、キー名も比較されます 8. その他の配列関数 range(0,12);指定された範囲内のセルを含む配列を作成します array_unique($arr); 配列内の重複した値を削除すると、元のキー名が新しい配列に保持されます。 array_reverse($arr,TRUE); 2 番目のパラメータが TRUE の場合、元の配列とセルの順序が逆になった配列を返します。 //srand((float)microtime()*10000000); array_rand($arr,2); 配列から 1 つ以上の要素をランダムに削除します。 shuffle($arr); 配列の順序を入れ替えます。 このクラスの関数を使用すると、さまざまな方法で配列を操作し、対話することができます。配列の本質は、一連の変数を保存、管理、操作することです。 PHP は、ユーザーまたは別の関数によって作成できる 1 次元および多次元の配列をサポートしています。データベース クエリから配列を生成する特定のデータベース処理関数と、配列を返す関数があります。 array_change_key_case — 文字列キーがすべて小文字または大文字である配列を返します。 array_chunk — 配列を複数に分割する array_combine — 1 つの配列の値をキーとして、別の配列の値を値として使用して配列を作成します array_count_values — 配列内のすべての値の出現数をカウントします。 array_diff_assoc — インデックスチェックを使用して配列の差を計算する array_diff_key — キー比較を使用して配列の差分を計算する array_diff_uassoc — インデックスチェックを備えたユーザー指定のコールバック関数を使用して配列の差分を計算する array_diff_ukey — キーを比較するコールバック関数を使用して配列の差分を計算する array_diff — 配列の差分を計算する array_fill_keys — キーを指定して配列に値を入力します array_fill — 配列を指定された値で埋める array_filter — コールバック関数を使用して配列内の要素をフィルターする array_flip — 配列内のキーと値を交換する array_intersect_assoc — インデックスチェックを使用して配列の交差を計算する array_intersect_key — キー比較を使用して配列の共通部分を計算する array_intersect_uassoc — インデックスを比較するコールバック関数を使用して、インデックスをチェックして配列の交差を計算します。 array_intersect_ukey — キーを比較するコールバック関数を使用して配列の共通部分を計算する array_intersect — 配列の交差を計算する array_key_exists — 指定されたキーまたはインデックスが配列内に存在するかどうかを確認する array_keys — 配列内のすべてのキーを返す array_map — 指定された配列の要素にコールバック関数を適用する array_merge_recursive — 1 つ以上の配列を再帰的にマージする array_merge — 1 つ以上の配列をマージする array_multisort — 複数の配列または多次元配列をソートする array_pad — 配列を指定された長さまで値でパディングする array_pop — 配列の最後の要素をポップします (スタックからポップします)。 array_product — 配列内のすべての値の積を計算します array_push — 1 つ以上の要素を配列の末尾にプッシュします (スタックにプッシュします)。 array_rand — 配列から 1 つ以上の要素をランダムに削除します array_reduce — コールバック関数を使用して配列を単一の値に反復的に削減します array_reverse — 要素を逆順にした配列を返す array_search — 配列内の指定された値を検索し、成功した場合は対応するキーを返します。 array_shift — 配列の先頭にある要素を配列からシフトする array_slice — 配列からセグメントを削除する array_splice — 配列の一部を削除し、別の値に置き換えます array_sum — 配列内のすべての値の合計を計算します array_udiff_assoc — インデックスチェックを使用して配列の差分を計算し、コールバック関数を使用してデータを比較します array_udiff_uassoc — コールバック関数を使用してデータとインデックスを比較し、インデックスをチェックして配列の差分を計算します。 array_udiff — コールバック関数を使用してデータを比較し、配列の差分を計算する array_uintersect_assoc — コールバック関数を使用して、インデックスをチェックして配列の交差を計算し、データを比較します array_uintersect_uassoc — コールバック関数を使用してデータとインデックスを比較し、インデックス チェックで配列の交差を計算します。 array_uintersect — コールバック関数を使用してデータを比較し、配列の交差部分を計算します。 array_unique — 配列から重複した値を削除する array_unshift — 配列の先頭に 1 つ以上のセルを挿入します array_values — 配列内のすべての値を返します array_walk_recursive — 配列の各メンバーにユーザー関数を再帰的に適用する array_walk — 配列の各メンバーにユーザー関数を適用する 配列 — 新しい配列を作成する arsort — インデックス関係を維持しながら配列を逆順にソートする asort — インデックス関係を維持しながら配列をソートする コンパクト — 変数名とその値を含む配列を作成する count — 配列内の要素の数、またはオブジェクト内の属性の数をカウントします。 current — 配列内の現在の要素を返します。 each — 配列内の現在のキーと値のペアを返し、配列ポインターを 1 ステップ先に移動します。 end — 配列の内部ポインタを最後の要素に設定します extract — 変数を配列から現在のシンボルテーブルにインポートする in_array — 配列内に値が存在するかどうかを確認する key — 連想配列からキー名を取得します krsort — 配列をキーによって逆順にソートする ksort — 配列をキーでソートする list — 配列の値をいくつかの変数に代入する natcasesort — 「自然ソート」アルゴリズムを使用した、大文字と小文字を区別しない配列のソート natsort — 「自然ソート」アルゴリズムを使用して配列をソートする next — 配列内の内部ポインタを 1 つ前に移動します。 pos — current() のエイリアス prev — 配列の内部ポインタを 1 ビットロールバックします range — 指定された範囲内のセルを含む配列を作成する リセット — 配列の内部ポインタを最初の要素に設定します rsort — 配列を逆順にソートする shuffle — 配列をシャッフルする sizeof — count() のエイリアス sort — 配列をソートする uasort — ユーザー定義の比較関数を使用して配列内の値を並べ替え、インデックスの関連付けを維持します uksort — ユーザー定義の比較関数を使用して配列内のキーを並べ替える usort — ユーザー定義の比較関数を使用して配列内の値を並べ替えます 配列を使用する 前の章で紹介した変数はすべて、単一のデータのみを格納できるスカラー変数でした。配列は、一連の値または一連の値を格納できる変数です。配列には多くの要素を含めることができます。各要素には、テキスト、数値、または別の配列などの値があります。他の配列を含む配列は多次元配列と呼ばれます。 |