Posted in PHP onMay 10, 2022
php解析非标准json、非规范json的方式实例
前言
采集数据的时候经常碰到一些JSON数据的Key值不是字符串,下面就来看看用php如何解析非标准、非规范json
话不多说,直接上代码:
// 解析非标准json,注意暂时未处理 {str:["aaaa","bbb"]}
$json = preg_replace( "/s(?=s)/","\1", $json );// 多个空格只留一个
$json = preg_replace( "/([{},]+)s?"?s?(w*?)s?"?s?:s?/", "\1"\2":", $json);// 转义key
$json = preg_replace("/"s?:"s?(.*?)"s?([,]}]+?)/","":"\1"\2", $json);// 转义 value
// 解析非标准json,注意暂时未处理 {str:["aaaa","bbb"]}
// 测试数据
$json[] = "{"v-soft-list":[{typecode:"zhuanbi",gametype:"赚币",count:5},{typecode:"dongzuo",gametype:"动作",count:12},{typecode:"maoxian",gametype:"冒险",count:14},{typecode:"xiuxian",gametype:"休闲",count:61},{typecode:"zhili",gametype:"智力",count:17},{typecode:"gaoxiao",gametype:"搞笑",count:6},{typecode:"celue",gametype:"策略",count:4},{typecode:"qipai",gametype:"棋牌",count:2}]}";
$json[] ="{"asin": "0001048791", "salesRank": {"Books": 6334800}, "imUrl": "http://ecx.images-amazon.com/images/I/51MKP0T4DBL.jpg", "categories": [["Books"]], "title": "The Crucible: Performed by Stuart Pankin, Jerome Dempsey & Cast"}";
$json[] = "{csrfToken: "ffmekos3s3kc", abVersion: "", abtestMap: {}}";
// 解析
$semesters = json_decode($json, true);
echo $json;
var_dump($semesters);die();
php解析非标准json、非规范json的方式实例
- Author -
狂野小青年- Original Sources -
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Tags in this post...
Reply on: @reply_date@
@reply_contents@