Array_mergeとarray_merge_recursiveが期待どおりに機能せず、配列を一緒にプッシュしてインデックス番号を保持する代わりに、より多くのインデックスを作成します。入力/目的の出力については、以下を参照してください。
Array (
[0] => array(
[0] => "string1",
[1] => "string2",
[2] => "string3"
),
[1] => array(
[0] => "string4",
[1] => "string5",
[2] => "string6"
),
[2] => array(
[0] => "string7",
[1] => "string8",
[2] => "string9"
)
)
必要な出力:
Array (
[0] => array("string1","string4","string7"),
[1] => array("string2","string5","string8"),
[2] => array("string3","string6","string9")
)
編集:
おそらく最良の例ではありません。同じ結果を達成したいのですが、ネストされた各配列のキーの数が等しくありません。より良い例については、以下を参照してください。
<?php
$array = Array (
[0] => array(
[0] => "string1",
[1] => "string2",
[2] => "string3"
),
[1] => array(
[0] => "string4",
[1] => "string5",
[2] => "string6"
),
[2] => array(
[0] => "string7",
[1] => "string8",
[2] => "string9"
),
[3] => array(
[0] => "string10",
[1] => "string11",
[2] => "string12"
)
);
$output=array();
for($0=0;$j<count($array[0]);$j++){
$output[$j] = array();
}
for($i=0;$i<count($array);$i++){
for($0=0;$j<count($array[0]);$j++){
$output[$j] = array_push($output[$j],$column_values[$i][$j]);
}
}
?>
しかし、これを行うと、$ output配列で正しい数のキーを取得しますが、それらにはすべてbool(false)が含まれています。何か助けはありますか?
これが望ましい出力です。
Array (
[0] => array("string1","string4","string7","string10"),
[1] => array("string2","string5","string8","string11"),
[2] => array("string3","string6","string9","string12")
)