2017-02-09 106 views
-2

我想用php創建多個json字符串數組。 JSON必須是這樣Php代碼創建多個數組json

[{ 
    app:[{"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}], 
    app2:[{"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}, 
     {"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}, 
     {"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}] 
}] 

當我使用

$array = array(
array("ad1"=> 
    array("id"=>"3", "image_title"=>"Fashion", "image_url"=> "6968ec4b67315f81bbf3b893ca02a195.jpg") 
    ), 
    array("ad2"=> 
    array("id"=>"4", "image_title"=>"Fashion", "image_url"=> "6968ec4b67315f81bbf3b893ca02a195.jpg"), 
    array("id"=>"5", "image_title"=>"Fashion", "image_url"=> "6968ec4b67315f81bbf3b893ca02a195.jpg"), 
    array("id"=>"6", "image_title"=>"Fashion", "image_url"=> "6968ec4b67315f81bbf3b893ca02a195.jpg") 
    ) 
); 
echo json_encode($array); 

我得到的結果是

[{"ad1":{"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}}, 
{"ad2":{"id":"4","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}, 
"0":{"id":"5","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}, 
"1":{"id":"6","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}}] 

它表示ID 5 0和1和6

如何糾正? 請幫幫我嗎?

+0

是的,這是可能的。發佈您當前的輸入數據 – RomanPerekhrest

+0

歡迎來到StackOverflow!請查看[如何提出一個好問題]的指南(http://stackoverflow.com/help/how-to-ask)。請記住添加您已經嘗試的內容,最好使用代碼片段。 – AesSedai101

+0

使用json_encode函數將您的php數組轉換爲json數組 – mith

回答

0

你的陣列應該是這個樣子:

$array = [ 
    [ 
     'app' => [ 
      'id' => 3, 'image_title' => 'Fashion', // and do so on 
     ], 
     'app2' => [ 
      ['id' => 3, 'image_title' => 'Fashion',], // and do so on 
      ['id' => 3, 'image_title' => 'Fashion',], // and do so on 
      ['id' => 3, 'image_title' => 'Fashion',], // and do so on 
     ], 
    ] 
]; 

echo json_encode($array); 

然後輸出應該像你所描述的:

[{ 
    app:[{"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}], 
    app2:[{"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}, 
     {"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}, 
     {"id":"3","image_title":"Fashion","image_url":"6968ec4b67315f81bbf3b893ca02a195.jpg"}] 
}] 

它可能會有所不同一點,例如,按鍵得到封裝在雙引號和整數中(實際上是整數,而不是包含數字的字符串)將不帶雙引號。雙引號和其他特殊字符可以在JSON字符串中轉義(\")。

希望它有幫助。

+0

結果顯示[{「app」:{「id」:3,「image_title」:「Fashion」},「app2」:{「id」:3,「image_title」:「Fashion」}}]。 app2只顯示一個數組。 – joe

+0

相當正確,我忘了那也應該是陣列;) –

+0

有什麼辦法可以做? – joe