2013-09-30 77 views
0

我有一個數組,我遍歷它:通過兩個數組循環?

foreach($input['gallery'] as $galleryImg) { 
} 

但內循環,不是做東西$輸入[「畫廊」]等,我也想爲$輸入做點什麼[「galleryData」 ]。

如何訪問相同循環中的圖庫數據數組的每個部分?

foreach($input['gallery'] as $galleryImg) { 

    //do something for $galleryImg 
    //do something for $input['galleryData'][$i?] 
} 

自卸輸入:

{ 
    ["title"]=> string(0) "" 
    ["date"]=> string(10) "30-09-2013" 
    ["content"]=> string(0) "" 
    ["galleryData"]=> string(149) 
     "[ 
      { 
       "comment":"$(this).data('comment')" 
       ,"youTube":"$(this).data('youtube')" 
      }, 
      { 
       "comment":"$(this).data('comment')" 
       ,"youTube":"$(this).data('youtube')" 
      } 
     ]" 
    ["cover"]=> object(Symfony\Component\HttpFoundation\File\UploadedFile)#9 (7) 
     { 
      ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> bool(false) 
      ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(14) "smallbunny.jpg" 
      ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(10) "image/jpeg" 
      ["size":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(2383) 
      ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(0) 
      ["pathName":"SplFileInfo":private]=> string(14) "/tmp/phpBXVl5Q" 
      ["fileName":"SplFileInfo":private]=> string(9) "phpBXVl5Q" 
     } 
    ["gallery"]=> array(2) 
     { 
      [0]=> object(Symfony\Component\HttpFoundation\File\UploadedFile)#10 (7) 
       { 
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> bool(false) 
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(9) "6empj.jpg" 
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(10) "image/jpeg" 
        ["size":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(116985) 
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(0) 
        ["pathName":"SplFileInfo":private]=> string(14) "/tmp/phpsl4sNd" 
        ["fileName":"SplFileInfo":private]=> string(9) "phpsl4sNd" 
       } 
      [1]=> object(Symfony\Component\HttpFoundation\File\UploadedFile)#11 (7) 
       { 
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> bool(false) 
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(14) "smallbunny.jpg" 
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(10) "image/jpeg" 
        ["size":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(2383) 
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(0) 
        ["pathName":"SplFileInfo":private]=> string(14) "/tmp/phpA1u3vA" 
        ["fileName":"SplFileInfo":private]=> string(9) "phpA1u3vA" 
       } 
     } 
} 
+0

您能否顯示一個'var_dump($ in放)'......我想這比在霧中徘徊更有用。 – djot

+0

任何原因'[「galleryData」]'是一個字符串? – Stijn

+0

在json中看起來像數組序列化 – grunk

回答

-1

環路的主陣列並添加專項行動根據數組鍵:

foreach($input as $key => $value) { 
    if($key == 'gallery') { 
     foreach($value as $galleryValue) { 
      //Do something with $galleryValue; 
     } 
    } 
    else if ($key == 'galleryData') { 
     $galleryData = json_decode($value); 
    } 
} 

對於一個更健壯的代碼,你也可以檢查$value是foreach之前的一個數組,只是爲了確保和避免錯誤

+0

解釋你的倒票... – grunk

+0

我做到了,當OP給我們轉儲:( – grunk

+0

有一個+1 :)我不確定是否應該刪除答案併發佈一個新的,或編輯現有的,在這種情況下。 – Stijn