怎么会有错呢,简单的json读取

WBOY
Freigeben: 2016-06-23 13:47:20
Original
1007 Leute haben es durchsucht


$pingluninfo =  {
    "title":"123",
    "url":"http://localhost/?p=9",
    "ttime":1401327899094,
    "sourceid":"9",
    "parentid":"0",
    "categoryid":"",
    "ownerid":"",
    "metadata":"",
    "comments":[
        {
            "cmtid":"358",
            "ctime":1401327899094,
            "content":"2013年8月1日18:36:29 O(∩_∩)O~",
            "replyid":"0",
            "user":{
                "userid":"1",
                "nickname":"admin",
                "usericon":"",
                "userurl":"",
                "usermetadata":{
                    "area": "北京市",
                    "gender": "1",
                    "kk": "",
                    "level": 1
                }
            },
            "ip":"127.0.0.1",
            "useragent":"Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0",
            "channeltype":"1",
            "from":"",
            "spcount":"",
            "opcount":"",
            "attachment":[
                {
                    "type":1,
                    "desc":"",
                    "url":"http://img.sohu.itc/xxxx"
                }
            ]
        }
    ]
}
EOT;

$pingluninfo = json_decode($pingluninfo, true);
if(!$pingluninfo) {
die('错误的数据格式');
}
?>
总是输出 错误的数据格式


回复讨论(解决方案)

看着json 不对劲。
中文在json_encode 后不是这样的吧

<?php $pingluninfo = <<<EOT{    "title":"123",    "url":"http://localhost/?p=9",    "ttime":1401327899094,    "sourceid":"9",    "parentid":"0",    "categoryid":"",    "ownerid":"",    "metadata":"",    "comments":[        {            "cmtid":"358",            "ctime":1401327899094,            "content":"2013年8月1日18:36:29 O(∩_∩)O~",            "replyid":"0",            "user":{                "userid":"1",                "nickname":"admin",                "usericon":"",                "userurl":"",                "usermetadata":{                    "area": "北京市",                    "gender": "1",                    "kk": "",                    "level": 1                }            },            "ip":"127.0.0.1",            "useragent":"Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0",            "channeltype":"1",            "from":"",            "spcount":"",            "opcount":"",            "attachment":[                {                    "type":1,                    "desc":"",                    "url":"http://img.sohu.itc/xxxx"                }            ]        }    ]}EOT;$pingluninfo = json_decode($pingluninfo, true);if(!$pingluninfo) {    die('错误的数据格式');}echo "<pre class="brush:php;toolbar:false">";print_r($pingluninfo);echo "
Nach dem Login kopieren
Nach dem Login kopieren
";

输出:
Array(    [title] => 123    [url] => http://localhost/?p=9    [ttime] => 1401327899094    [sourceid] => 9    [parentid] => 0    [categoryid] =>     [ownerid] =>     [metadata] =>     [comments] => Array        (            [0] => Array                (                    [cmtid] => 358                    [ctime] => 1401327899094                    [content] => 2013年8月1日18:36:29 O(∩_∩)O~                    [replyid] => 0                    [user] => Array                        (                            [userid] => 1                            [nickname] => admin                            [usericon] =>                             [userurl] =>                             [usermetadata] => Array                                (                                    [area] => 北京市                                    [gender] => 1                                    [kk] =>                                     [level] => 1                                )                        )                    [ip] => 127.0.0.1                    [useragent] => Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0                    [channeltype] => 1                    [from] =>                     [spcount] =>                     [opcount] =>                     [attachment] => Array                        (                            [0] => Array                                (                                    [type] => 1                                    [desc] =>                                     [url] => http://img.sohu.itc/xxxx                                )                        )                )        ))
Nach dem Login kopieren
Nach dem Login kopieren


测试无误

请把引号补齐!
"ttime":1401327899094, 应为 "ttime":"1401327899094",
其他类同

echo '<meta http-equiv="content-type" content="text/html;charset=utf-8">';$pingluninfo = <<<EOT{    "title":"123",    "url":"http://localhost/?p=9",    "ttime":1401327899094,    "sourceid":"9",    "parentid":"0",    "categoryid":"",    "ownerid":"",    "metadata":"",    "comments":[        {            "cmtid":"358",            "ctime":1401327899094,            "content":"2013年8月1日18:36:29 O(∩_∩)O~",            "replyid":"0",            "user":{                "userid":"1",                "nickname":"admin",                "usericon":"",                "userurl":"",                "usermetadata":{                    "area": "北京市",                    "gender": "1",                    "kk": "",                    "level": 1                }            },            "ip":"127.0.0.1",            "useragent":"Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0",            "channeltype":"1",            "from":"",            "spcount":"",            "opcount":"",            "attachment":[                {                    "type":1,                    "desc":"",                    "url":"http://img.sohu.itc/xxxx"                }            ]        }    ]}EOT;$pingluninfo = json_decode($pingluninfo, true);if(!$pingluninfo) {    die('错误的数据格式');}else{    print_r($pingluninfo);}
Nach dem Login kopieren
Nach dem Login kopieren

测试过,很正常。
(    [title] => 123    [url] => http://localhost/?p=9    [ttime] => 1401327899094    [sourceid] => 9    [parentid] => 0    [categoryid] =>     [ownerid] =>     [metadata] =>     [comments] => Array        (            [0] => Array                (                    [cmtid] => 358                    [ctime] => 1401327899094                    [content] => 2013年8月1日18:36:29 O(∩_∩)O~                    [replyid] => 0                    [user] => Array                        (                            [userid] => 1                            [nickname] => admin                            [usericon] =>                             [userurl] =>                             [usermetadata] => Array                                (                                    [area] => 北京市                                    [gender] => 1                                    [kk] =>                                     [level] => 1                                )                        )                    [ip] => 127.0.0.1                    [useragent] => Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0                    [channeltype] => 1                    [from] =>                     [spcount] =>                     [opcount] =>                     [attachment] => Array                        (                            [0] => Array                                (                                    [type] => 1                                    [desc] =>                                     [url] => http://img.sohu.itc/xxxx                                )                        )                )        ))
Nach dem Login kopieren
Nach dem Login kopieren

你那是新版的吧!估计 数值型 超出最大了

你那是新版的吧!估计 数值型 超出最大了




新版的?怎么讲?

我把上面说测试正常的代码复制到我那里,就是提示数据错误。
看来真是环境问题啊

我把上面说测试正常的代码复制到我那里,就是提示数据错误。
看来真是环境问题啊

echo '<meta http-equiv="content-type" content="text/html;charset=utf-8">';$pingluninfo = <<<EOT{    "title":"123",    "url":"http://localhost/?p=9",    "ttime":1401327899094,    "sourceid":"9",    "parentid":"0",    "categoryid":"",    "ownerid":"",    "metadata":"",    "comments":[        {            "cmtid":"358",            "ctime":1401327899094,            "content":"2013年8月1日18:36:29 O(∩_∩)O~",            "replyid":"0",            "user":{                "userid":"1",                "nickname":"admin",                "usericon":"",                "userurl":"",                "usermetadata":{                    "area": "北京市",                    "gender": "1",                    "kk": "",                    "level": 1                }            },            "ip":"127.0.0.1",            "useragent":"Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0",            "channeltype":"1",            "from":"",            "spcount":"",            "opcount":"",            "attachment":[                {                    "type":1,                    "desc":"",                    "url":"http://img.sohu.itc/xxxx"                }            ]        }    ]}EOT;$pingluninfo = json_decode($pingluninfo, true);if(!$pingluninfo) {    die('错误的数据格式');}else{    print_r($pingluninfo);}
Nach dem Login kopieren
Nach dem Login kopieren

测试过,很正常。
(    [title] => 123    [url] => http://localhost/?p=9    [ttime] => 1401327899094    [sourceid] => 9    [parentid] => 0    [categoryid] =>     [ownerid] =>     [metadata] =>     [comments] => Array        (            [0] => Array                (                    [cmtid] => 358                    [ctime] => 1401327899094                    [content] => 2013年8月1日18:36:29 O(∩_∩)O~                    [replyid] => 0                    [user] => Array                        (                            [userid] => 1                            [nickname] => admin                            [usericon] =>                             [userurl] =>                             [usermetadata] => Array                                (                                    [area] => 北京市                                    [gender] => 1                                    [kk] =>                                     [level] => 1                                )                        )                    [ip] => 127.0.0.1                    [useragent] => Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0                    [channeltype] => 1                    [from] =>                     [spcount] =>                     [opcount] =>                     [attachment] => Array                        (                            [0] => Array                                (                                    [type] => 1                                    [desc] =>                                     [url] => http://img.sohu.itc/xxxx                                )                        )                )        ))
Nach dem Login kopieren
Nach dem Login kopieren

我把上面说测试正常的代码复制到我那里,就是提示数据错误。
看来真是环境问题啊

<?php $pingluninfo = <<<EOT{    "title":"123",    "url":"http://localhost/?p=9",    "ttime":1401327899094,    "sourceid":"9",    "parentid":"0",    "categoryid":"",    "ownerid":"",    "metadata":"",    "comments":[        {            "cmtid":"358",            "ctime":1401327899094,            "content":"2013年8月1日18:36:29 O(∩_∩)O~",            "replyid":"0",            "user":{                "userid":"1",                "nickname":"admin",                "usericon":"",                "userurl":"",                "usermetadata":{                    "area": "北京市",                    "gender": "1",                    "kk": "",                    "level": 1                }            },            "ip":"127.0.0.1",            "useragent":"Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0",            "channeltype":"1",            "from":"",            "spcount":"",            "opcount":"",            "attachment":[                {                    "type":1,                    "desc":"",                    "url":"http://img.sohu.itc/xxxx"                }            ]        }    ]}EOT;$pingluninfo = json_decode($pingluninfo, true);if(!$pingluninfo) {    die('错误的数据格式');}echo "<pre class="brush:php;toolbar:false">";print_r($pingluninfo);echo "
Nach dem Login kopieren
Nach dem Login kopieren
";

输出:
Array(    [title] => 123    [url] => http://localhost/?p=9    [ttime] => 1401327899094    [sourceid] => 9    [parentid] => 0    [categoryid] =>     [ownerid] =>     [metadata] =>     [comments] => Array        (            [0] => Array                (                    [cmtid] => 358                    [ctime] => 1401327899094                    [content] => 2013年8月1日18:36:29 O(∩_∩)O~                    [replyid] => 0                    [user] => Array                        (                            [userid] => 1                            [nickname] => admin                            [usericon] =>                             [userurl] =>                             [usermetadata] => Array                                (                                    [area] => 北京市                                    [gender] => 1                                    [kk] =>                                     [level] => 1                                )                        )                    [ip] => 127.0.0.1                    [useragent] => Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0                    [channeltype] => 1                    [from] =>                     [spcount] =>                     [opcount] =>                     [attachment] => Array                        (                            [0] => Array                                (                                    [type] => 1                                    [desc] =>                                     [url] => http://img.sohu.itc/xxxx                                )                        )                )        ))
Nach dem Login kopieren
Nach dem Login kopieren


测试无误

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage