PHP では、配列は非常に一般的に使用されるデータ構造です。ただし、場合によっては、配列を操作して行を列に、または列を行に変換する必要があります。この記事では、PHP 配列の行を列に変換する方法を紹介します。
行から列へは、配列内の各行を列に変換して新しい配列を生成することを指します。たとえば、次のデータを含む $array という名前の配列があります:
$array = array( array('name'=>'张三', 'age'=>18, 'sex'=>'男'), array('name'=>'李四', 'age'=>20, 'sex'=>'男'), array('name'=>'王五', 'age'=>22, 'sex'=>'女') );
これを次の形式の配列に変換したいとします:
$new_array = array( 'name' => array('张三', '李四', '王五'), 'age' => array(18, 20, 22), 'sex' => array('男', '男', '女') );
実装するコードは次のとおりです。行変換:
$new_array = array(); foreach($array as $key=>$value){ foreach($value as $k=>$v){ $new_array[$k][$key] = $v; } }
コードの説明:
$new_array
を作成します。 $array
を走査します。 $new_array
に挿入します。 多次元配列を変換する必要がある場合は、再帰的メソッドを使用してそれを実現できます。以下は、多次元配列の行から列への変換を実装するコードです:
function array_row2column($array){ if(!is_array($array)){ return false; } $new_array = array(); foreach($array as $key=>$value){ foreach($value as $k=>$v){ $new_array[$k][$key] = (is_array($v)) ? array_row2column($v) : $v; } } return $new_array; }
コードの説明:
array_row2column()
を定義します。多次元配列を行と列に変換するために使用され、配列は行から列への演算を実行します。 $array
が配列であるかどうかを判断し、そうでない場合は false を返します。 $new_array
を作成します。 $array
を走査します。 $new_array
に挿入します。 $new_array
を返します。 この時点で、行から列への操作は完了しました。この記事が皆様のお役に立てれば幸いです。
以上がPHP配列の行から列への詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。