这是json格式吗?

时间:2015-06-17 14:55:39

标签: php json

我收到了这个输出:

{"params":{"2":true,"3":true}}

我将其打印为(在PHP端):

$data = file_get_contents("php://input");
        print($data);

我想在PHP端使用循环使用那个2和3的值。但正如我所想,它不是json格式(它的怀疑)。那么我如何使用循环来使用这些值?

3 个答案:

答案 0 :(得分:3)

$j='{"params":{"2":true,"3":true}}';

$decoded=json_decode($j,1);

print "<pre>\n";
print_r($decoded);
print "</pre>\n";

json_decode()的第二个参数是

  

'assoc' - 当为TRUE时,返回的对象将被转换为   关联数组

答案 1 :(得分:2)

<?php

$json='{"params":{"2":true,"3":true}}';

$params=json_decode($json, true)['params'];

foreach ($params as $k =>$v){
    echo $k . ' is ' .  var_export($v, true) . PHP_EOL;
}

输出:

2 is true
3 is true

答案 2 :(得分:0)

$data='{"params":{"2":true,"3":true}}';
$decoded=json_decode($data,1);
        foreach ($decoded as $key => $param)
        {
            foreach ($param as $user_id => $value)
            {
                    echo $user_id;
            }
        }

它给了我输出:

 2 3

(正如我所料)。