入れ子配列の単一次元への変換
このプログラミング シナリオでは、単一要素の部分配列で構成される配列が登場します。ここでのタスクは、この多次元構造を 1 次元配列に変換することです。
PHP のネイティブ アプローチ
PHP には、この変換を処理できる array_map という便利な関数が用意されています。効率的に。以下に例を示します。
$array = [[88868], [88867], [88869], [88870]]; $oneDimensionalArray = array_map('current', $array); // Output: [88868, 88867, 88869, 88870]
array_map 関数は、最初の引数としてコールバック関数を受け取り、2 番目の引数として配列を受け取ります。この場合、コールバック関数 current は各サブ配列から現在の要素を取得し、配列を効果的にフラット化します。
複数要素のサブ配列の一般化
サブ配列に複数の要素が含まれている場合要素がある場合、上記のアプローチでは各部分配列の最初の要素のみが返されます。このシナリオに対処するには、call_user_func_array 関数を利用できます。
$oneDimensionalArray = call_user_func_array('array_merge', $array); // Output: [88868, 88867, 88869, 88870]
call_user_func_array 関数は、引数の配列 (この場合はサブ配列の配列) を使用してコールバック関数を呼び出します。 array_merge 関数は、すべての要素を 1 つの配列に結合し、目的の変換を行います。
以上がPHP でネストされた配列をフラット化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。