2011-12-08 11 views
0

私はデータベースに格納されている配列に追加しようとしています。シリアライズされた配列として保存されます。私はそれをDBから抜き出してそれをunserializeし、それを追加してからそれをもう一度シリアル化して保存する必要があります。私は配列を更新する部分以外は何の問題もありません。PHPが多次元配列に追加

Array 
    (
     [pages]=>Array 
      (
       [0]=>12 
       [1]=>43 
       [2]=>34 
      ) 
     [images]=>Array 
      (
       [0]=>54 
       [1]=>89 
       [2]=>78 
      ) 
    ) 
//I tried this 

$newid = 33; 
$array['pages'][] = $newid; 

Iはアレイの第2の次元に値を追加する必要があります。次のように

アレイです。何か案は?

+0

PHPドキュメントには、配列の作成に関する豊富な情報があります。 – Scuzzy

+0

は問題なく動作しますか? http://ideone.com/87lKZ – Joe

+0

これはダムです。それは、あなたの正面にあるときに問題を見ることができないそれらのアウトの1つでした。操作しようとしていた配列は、期待どおりに構築されませんでした。速いprint_r($配列)が問題を明らかにしました。みんなの時間を無駄にして申し訳ありません。 – Laurence

答えて

1

最初の部分配列の場合とまったく同じように動作します:

$newid = 555; 
$array['images'][] = $newid; 
0

あなたが作業している配列は、あなたの例からも明らかではありません$配列、という名前の変数に格納されていると仮定すると、あなたの割り当てなければなりません期待、および設定などの作業[ページ] [3] => 33すると

画像サブアレイ用の「画像」を代入するのと同じ方法でアクセスすることができ、「ページ」

+0

ええ、実際に配列を作成したコードでシリアル化してDBに格納する前に問題が発生しました。分かりました。ありがとう。 – Laurence

0

はあなたとより快適に感じるかもしれませarray_push()

array_push($array['pages'], $newid);