0

私は2つの多次元配列を持っています:

array1[0][0] = 'yes';
array1[0][1] = 'no';
array1[1][0] = 'gilbert';
array1[1][1] = 'duncan';

array2[0][0] = 'good';
array2[0][1] = 'bad';
array2[1][0] = 'vegetables';
array2[1][1] = 'chocolate';

この2つの配列から次のような新しい配列を作成したいと思います。

array3[0][0] = 'yes';
array3[0][1] = 'no';
array3[0][2] = 'good';
array3[0][3] = 'bad';
array3[1][0] = 'gilbert';
array3[1][1] = 'duncan';
array3[1][2] = 'vegetables';
array3[1][3] = 'chocolate';

私はPHPを使用しています。どうすればこれを達成できますか。PHParray_merge()は、ある配列を別の配列に追加します。私が欲しいのは、2つの配列を並べて新しい配列を作成することです。

4

1 に答える 1

3

あなたはただそれらを歩く必要があるでしょう。それらをマージするかなり具体的な(そして興味深い)方法を定義しました。私はおそらくこのような関数をお勧めします:

function my_combine_arrays()
{
    // This lets us accept N arrays as an input.
    $arrList = func_get_args();
    $retval = array();
    foreach ($arrList as $array)
    {
        // Note the $key here.  If the arrays have different key types
        // like an assoc, you may have issues.
        foreach ($array as $key=>$arrsub)
        {
           foreach ($arrsub as $arritem)
           {
               $retval[$key][] = $arritem;
           }
        }
    }
    return $retval;
}
于 2012-04-18T07:32:20.913 に答える