无法使用PHP将json字符串转换为数组

时间:2017-05-09 05:54:30

标签: php arrays json

我需要一个帮助。我无法使用PHP将字符串转换为json数组。我在下面解释我的代码。

$education=$_POST['education'];

上面的行给出了这个输出[{'name':'aaa','id':'12'},{'name':'bbb','id':'20'}]。但它作为一个字符串出现。我试图转换成如下所示的数组,但它将输出作为null

$edu=json_decode($education,true);
print_r($edu);

它给出空输出。在这里,我需要将其转换为数组并填充所有数据。请帮帮我。

2 个答案:

答案 0 :(得分:1)

您好需要制作如下所示的json字符串:

$arr = '[{"name":"aaa","id":"12"},{"name":"bbb","id":"20"}]';
$a = json_decode($arr);
echo "<pre>";
print_r($a);
die;

它会显示如下输出:

Array
(
[0] => stdClass Object
    (
        [name] => aaa
        [id] => 12
    )

[1] => stdClass Object
    (
        [name] => bbb
        [id] => 20
    )

)

答案 1 :(得分:0)

在php中,您可以使用此函数来检查有效的json:

function _isJsonString($string) {
        json_decode($string);
        return (json_last_error() == JSON_ERROR_NONE);
    }

您还可以在线查看有效的json:http://json.parser.online.fr/ 希望这会有所帮助。