2017-04-20 7 views
0

私は多次元配列を持っており、別の配列を多次元配列にプッシュしたいと思います。私はPHPのarray_push()関数を使用しているが、それは動作していません。だから私は私の多次元配列に別の配列を追加できますか?誰も助けることができますか?PHPの多次元配列のプッシュが機能しない

$array1 = ['id', 'name', 'age']; 
$array2 = [ 
    [1, 'name1', 10], 
    [2, 'name2', 20], 
    [3, 'name3', 30] 
]; 

注:

は、ここに私のコードで私が一番上に$ ARRAY1値を持っていると思います。

+1

を解決することを願っています

は、最終的な配列も同様にする必要がある方法について説明します。この例では、あなたの出力は何でしょうか? – Iceman

答えて

3

を使用することができますPHPのarray_push();機能は動作しません。これを解決するにはarray_merge()を使用する必要があります。また、それらのデータを保持するために別の配列を作成する必要があります。私はこのコードはあなたの問題

$array1 = ['id', 'name', 'age']; 
$array2 = [ 
    [1, 'name1', 10], 
    [2, 'name2', 20], 
    [3, 'name3', 30] 
]; 

$array3 = array_merge([$array1], $array2); 

echo "<pre>"; 
print_r($array3); 
echo "</pre>"; 
+2

'$ array3 = array_merge([$ array1]、$ array2);'あなたの 'print_r()'をチェックしてください。 – AbraCadaver

+2

おっと私は$ array1を別の配列にラップすることを忘れました。ありがとうAbra Cadaver –

5

array_push()は、配列の最後に新しい要素を追加します。あなたの代わりに前面に新しい要素をしたい場合は、array_unshift()を使用します。

$array1 = ['id', 'name', 'age']; 
$array2 = [ 
    [1, 'name1', 10], 
    [2, 'name2', 20], 
    [3, 'name3', 30] 
]; 
array_unshift($array2, $array1); 

の$配列2は、次のようになります。

[ 
    ['id', 'name', 'age'], 
    [1, 'name1', 10], 
    [2, 'name2', 20], 
    [3, 'name3', 30] 
]; 
-2

あなたがこの問題についてarray_unshift以上の単純な$array2 = $array1 + $array2