如何从Ajax请求中使用PHP获取二级JSON节点的值?

时间:2013-02-01 13:42:21

标签: php ajax codeigniter codeigniter-2

如何从Ajax请求中使用PHP获取二级JSON节点的值? 如果我在客户端有下一个JSON数据:

var Data = {idJS: "1", dataToSet: "example", another:{ field1: "example2"} };

当Ajax请求完成后,在PHP中,dataToSet得到如下:$_POST['dataToSet'],特别是,我使用Codeigniter,然后使用$this->input->post('dataToSet')。但是,我怎样才能获得another->field1

[解决]:

$postdata = $this->input->post();
$postdata['another']['field1'];

3 个答案:

答案 0 :(得分:2)

我不知道你是怎么用codeigniter做的,但你必须解码json。之后您可以访问该字段。这可能看起来像这样:

$postdata = json_decode($this->input->post);
$postdata['another']['field1];

答案 1 :(得分:0)

这应该这样做:

$data = $this->input->post('another');
print_r($data->field1);

// or you can do it in one line:
$this->input->post('another')->field1;

答案 2 :(得分:0)

试试这个:

$ata = json_decode($this->input->post('dataToSet'), true);
$field1 = $data['another']['field1'];