開発プロセス中、1 次元配列を 2 次元配列に変換する必要がある状況によく遭遇します。この問題は PHP で簡単に解決できます。この記事では、1 次元配列を 2 次元配列にマージする 2 つの方法を紹介します。
方法 1: array_chunk 関数を使用する
array_chunk 関数は、配列を複数の配列に分割し、各配列の要素数を指定できます。この関数の構文は次のとおりです。
array array_chunk(array $array, int $size, bool $preserve_keys = false)
このうち、$array は分割する配列、$size は各配列の要素数、$preserve_keys は分割する配列のキー名を保持するかどうかを示します。元の配列。
サンプル コードは次のとおりです:
$array = array('cat', 'dog', 'fish', 'bird', 'hamster', 'rabbit'); $result = array_chunk($array, 2); print_r($result);
このコードは次の結果を出力します:
Array ( [0] => Array ( [0] => cat [1] => dog ) [1] => Array ( [0] => fish [1] => bird ) [2] => Array ( [0] => hamster [1] => rabbit ) )
上記のコードは、元の配列を 3 つの配列 (それぞれに 2 つずつ) に分割します。配列要素。
次に、foreach ループを使用して、各 2 次元配列内の要素を反復処理し、それらを 1 つの 2 次元配列にマージします。
サンプル コードは次のとおりです:
$array = array('cat', 'dog', 'fish', 'bird', 'hamster', 'rabbit'); $result = array_chunk($array, 2); $new_array = array(); foreach ($result as $res) { $new_array[] = $res; } print_r($new_array);
上記のコードは次の結果を出力します:
Array ( [0] => Array ( [0] => cat [1] => dog ) [1] => Array ( [0] => fish [1] => bird ) [2] => Array ( [0] => hamster [1] => rabbit ) )
これで、1 次元配列が 2 次元配列に正常にマージされました。 -次元配列。
方法 2: for ループを使用する
for ループを使用すると、1 次元配列を 2 次元配列にマージすることもできます。この方法は比較的簡単です。
サンプル コードは次のとおりです:
$array = array('cat', 'dog', 'fish', 'bird', 'hamster', 'rabbit'); $new_array = array(); for ($i = 0; $i < count($array); $i += 2) { $new_array[] = array($array[$i], $array[$i + 1]); } print_r($new_array);
上記のコードは次の結果を出力します:
Array ( [0] => Array ( [0] => cat [1] => dog ) [1] => Array ( [0] => fish [1] => bird ) [2] => Array ( [0] => hamster [1] => rabbit ) )
上記のコードは for ループを使用して元の 1 次元を分割します。配列を 2 つ含む複数の部分に分割する 要素の 2 次元配列。
概要
上記は、1 次元配列を 2 次元配列にマージする 2 つの方法です。 array_chunk 関数は、配列を複数の配列に分割できます。各配列の要素数を指定できます。for ループを使用する方が簡単です。この記事が PHP を学習している読者にとって役立つことを願っています。
以上がPHPで1次元配列を2次元配列にマージする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。