2015-10-02 43 views
0

我有一個數組我創建像爲什麼json_decode在這種情況下產生NULL?

[{ 
    "assetPreviewUrl":"pic1.jpg", 
    "assetUrl":"pic2.jpg" 
}, 
{ 
    "assetPreviewUrl":"pic3.jpg", 
    "assetUrl":"pic4.jpg" 
}] 

和最佳POST荷蘭國際集團我字符串化它,並把它作爲

<input type="hidden" name="slideData" /> 

價值,但只要我跑

$slideData = json_decode($_POST['slideData']); 

在服務器端我通過一個測試發現$slideDatanull

我已經驗證

  • 是< input type="hidden" name="slideData" />form之前正確value提交(通過console.log($('input[name="slideData"]').val())
  • $slideData
  • $_POST['slideData']不爲空(通過'Was $_POST[\'slideData\'] null ?' . (!$_POST['slideData'] ? 'yes' : 'no'

有什麼想法?需要更多信息?

+1

因爲你是_Not道格拉斯Crockford_。你知道誰發現了JSON,你不是那個人嗎 – Tushar

+0

@PaulCrovella確實有效 –

+0

那麼'$ _POST ['slideData']'實際上包含了什麼?使用'var_dump'來創建該值的調試輸出。 – CBroe

回答

-1

它看起來像你正在設置一個值(slideData)爲json值的數組。首先,發佈的數據作爲數組:

foreach ($slideData as $val) 
    echo "<input type='hidden' name='slideData[]' value='$val' />"; 

然後嘗試各自爲陣的值的JSON解碼:

foreach ($_POST['slideData'] as $val) 
    echo json_decode($val); 
相關問題