PHP 開発では、一部の操作を容易にするために添字配列を連想配列に変換する必要がある場合があります。この記事では、PHPを使って添字配列を連想配列に変換する方法を紹介します。
array_combine 関数は、PHP 自体が提供する関数で、2 つの配列を結合して 1 つの連想配列にすることができます。この関数を使用して、添字付き配列を連想配列に変換できます。例は次のとおりです。
<?php $keys = array('a', 'b', 'c'); $values = array(1, 2, 3); $result = array_combine($keys, $values); print_r($result); ?>
実行結果は次のとおりです。
Array ( [a] => 1 [b] => 2 [c] => 3 )
上記の結果からわかるように、元の添え字配列を連想配列に変換することができました。このうち、$keysパラメータは連想配列のキー名を表し、$valuesパラメータは連想配列のキー値を表します。 2 つの配列の要素の数が同じでない場合、不正確な結果が生じるため、2 つの配列の要素の数が等しいことを確認してください。
添字配列を手動で連想配列に変換することもできます。例は次のとおりです。
<?php $numbers = array(1, 2, 3); $letters = array('a', 'b', 'c'); $combined_array = array(); foreach($numbers as $key=>$value) { $combined_array[$value] = $letters[$key]; } print_r($combined_array); ?>
実行結果は次のとおりです。
Array ( [1] => a [2] => b [3] => c )
キー値と添え字配列の値を走査し、それらをキーとして使用します。値と連想配列の値。
さらに、PHP の array_map 関数を使用して添え字配列を連想配列に変換することもできます。例は次のとおりです。
<?php $numbers = array(1, 2, 3); $letters = array('a', 'b', 'c'); $combined_array = array_map(null, $numbers, $letters); print_r($combined_array); ?>
実行結果は次のとおりです。
Array ( [0] => Array ( [0] => 1 [1] => a ) [1] => Array ( [0] => 2 [1] => b ) [2] => Array ( [0] => 3 [1] => c ) )
結果からわかるように、array_map 関数は 2 次元配列を返します。連想配列に変換されます。
上記は、PHP 添字配列を連想配列に変換するためのいくつかの方法です。どちらの方法を使用する場合でも、2 つの配列の要素の数が等しいことに注意してください。そうでない場合、誤った結果が生じる可能性があります。
以上がPHPで添字配列を連想配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。