0

PHPで配列やオブジェクトを含むjson文字列をデコードしたい。でデコードしたとき


$array = json_decode($json, true); 
print_r($array);

NULL を返します。PHPでjsonをデコードする方法を教えてください。これは私のjson文字列です。


{
    success: 1,
    message: "Successful!",
    save_date: "2013-09-11 04:09:26",
    test: [
        {
        test_id: "1",
        test_date: "2013-09-12",
        test_name: "Test 1"
        },
        {
        test_id: "2",
        test_date: "2013-09-11",
        test_name: "Test 2"
        }
    ]
}

4

4 に答える 4

0

json 文字列は次のようになります。

$sJson = '{"success": 1,"message": "Successful!","save_date": "2013-09-11 04:09:26",
           "test": [    {"test_id": "1","test_date": "2013-09-12","test_name": "Test 1"},
                {"test_id": "2","test_date": "2013-09-11","test_name": "Test 2"}]}';
于 2013-09-12T08:42:30.367 に答える
0

これは有効な JSON オブジェクトではありません。JSON オブジェクトでは、すべてのプロパティ名を二重引用符で囲む必要があります。

{ "success": 1, "message": "Successful!" }

PHP は、json_last_error_msgそれを伝える便利な関数を提供します。

JSON 文字列を検証するためのオンライン ツールJSONLintもあります。

于 2013-09-12T08:30:07.240 に答える
0

JSON が無効です。プロパティ名も引用符で囲む必要があります。

このような:

{
    "success": 1,
    "message": "Successful!",
    "save_date": "2013-09-11 04:09:26",
    "test": []
}

ヒント: JSONLintを使用して JSON を検証します。

于 2013-09-12T08:31:02.440 に答える
-1

これを使って

   $result=(array)json_decode('your json string');

私はそれがあなたのために働いていると思います

于 2013-09-12T08:30:46.903 に答える