JSON在不使用json_decode()的情况下显示为PHP数组

时间:2017-11-27 14:31:17

标签: php jquery json

我正在项目中使用jstree并尝试将我的树保存到数据库。

我正在获取树数据如下:

var tmp = $('#tree').jstree(true).get_json();
console.log(tmp);

这会像我期望的那样在控制台中生成一个JSON对象:

enter image description here

但是当我使用jquery发布到PHP脚本时...

 $.ajax({
    type: 'POST',
    url: '/saveTree',
    data: {'tree': tmp},
    success: function(msg) {
      console.log(msg);
    }
  });

...它显示了我的数据的PHP数组:

enter image description here

我在/saveTree处的脚本在tree数组后键中显示POST数据:

var_dump($this->request->data['tree']);

我认为,因为我发布到脚本的数据是JSON格式,我需要在另一端json_decode()吗?如果没有,为什么不呢?

我也尝试在ajax请求中添加dataType: 'json',,但这没有任何区别。

这里发生了什么?

请注意/saveTree的PHP脚本在CakePHP 2.x中运行,因此上面的PHP行相当于常规PHP中的var_dump($_POST['tree'])

0 个答案:

没有答案