php で 2 次元配列を 1 次元配列に変換する方法: 1. ループ トラバーサルを使用して 2 次元配列をトラバースし、各要素を 1 次元配列に追加します。 「array_merge」関数では、複数の配列を1つの配列にマージし、2次元配列をパラメータとして「array_merge」関数に渡し、1次元配列に変換できます; 3.「array_reduce」関数を使用して渡すコールバック関数を通じて配列内のすべての値の処理を実行し、最終的に結果を返します。
このチュートリアルのオペレーティング システム: Windows10 システム、PHP バージョン 8.1.3、DELL G3 コンピューター。
PHP プログラミングでは、2 次元配列を 1 次元配列に変換する必要がある場合があります。 2 次元配列は複数の 1 次元配列で構成され、各 1 次元配列には他の配列も含まれる場合があります。ここでは、2 次元配列を 1 次元配列に変換する一般的な方法をいくつか紹介します。
方法 1: ループ走査を使用する
最も直接的な方法は、ループを使用して 2 次元配列を走査し、各要素を 1 次元配列に追加することです。
$twoDimensionalArray = array( array("apple", "banana", "orange"), array("car", "bike", "motorcycle"), array("sun", "moon", "stars") ); $oneDimensionalArray = array(); foreach ($twoDimensionalArray as $array) { foreach ($array as $element) { $oneDimensionalArray[] = $element; } } print_r($oneDimensionalArray);
上記のコードでは、2 つのネストされたループを使用して、最初に 2 次元配列内の各 1 次元配列を走査し、次に各 1 次元配列を走査します。そしてそれらを 1 次元配列に追加します。最後に、結果は `print_r` 関数を通じて出力されます。
方法 2: `array_merge` 関数を使用する
PHP には、複数の配列を 1 つの配列にマージできる `array_merge` 関数が用意されています。 2 次元配列をパラメータとして `array_merge` 関数に渡して、それを 1 次元配列に変換できます。以下は、`array_merge` 関数を使用したサンプル コードです:
$twoDimensionalArray = array( array("apple", "banana", "orange"), array("car", "bike", "motorcycle"), array("sun", "moon", "stars") ); $oneDimensionalArray = call_user_func_array('array_merge', $twoDimensionalArray); print_r($oneDimensionalArray);
上記のコードでは、`call_user_func_array` 関数を使用して、パラメータとして 2 次元配列を `array_merge` 関数に渡します。 `call_user_func_array` 関数の最初のパラメータは呼び出される関数の名前で、2 番目のパラメータはパラメータとして渡される配列です。最後に、結果は `print_r` 関数を通じて出力されます。
方法 3: `array_reduce` 関数を使用する
もう 1 つの方法は、コールバック関数を通じて配列内のすべての値を処理し、最終的に返すことができる `array_reduce` 関数を使用することです。結果。以下は、`array_reduce` 関数を使用したサンプル コードです:
$twoDimensionalArray = array( array("apple", "banana", "orange"), array("car", "bike", "motorcycle"), array("sun", "moon", "stars") ); $oneDimensionalArray = array_reduce($twoDimensionalArray, function ($carry, $item) { return array_merge($carry, $item); }, []); print_r($oneDimensionalArray);
上記のコードでは、`array_reduce` 関数を使用して 2 次元配列を走査し、コールバック関数を渡します。コールバック関数は 2 つのパラメータを受け取ります。`$carry` は最後のコールバック関数の戻り値 (初期値は空の配列) を表し、`$item` は現在スキャンされている 1 次元配列を表します。コールバック関数では、`array_merge` 関数を使用して、各 1 次元配列の要素を `$carry` にマージします。最後に、結果は `print_r` 関数を通じて出力されます。
どの方法を選択しても、2 次元配列を 1 次元配列に変換できます。実際のニーズに応じて、2 次元配列の変換問題を処理するために最適な方法を選択できます。
以上がPHPの二次元配列を一次元配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。