繁体   English   中英

为什么在这种情况下json_decode产生NULL?

[英]Why is json_decode producing NULL in this case?

我有一个我创建的数组

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

最好的POST我将其字符串化并放置为

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

但是我一跑

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

在服务器端,我通过测试发现$slideDatanull

我已经验证

  • 在提交form之前(通过console.log($('input[name="slideData"]').val()) ),< input type="hidden" name="slideData" />具有正确的value
  • $slideData
  • $_POST['slideData']不为null(通过'Was $_POST[\\'slideData\\'] null ?' . (!$_POST['slideData'] ? 'yes' : 'no'

任何想法? 需要更多信息?

似乎您正在将一个值(slideData)设置为json值数组。 首先,将数据发布为数组:

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

然后尝试解码数组每个值的json:

foreach ($_POST['slideData'] as $val)
    echo json_decode($val);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM