为了账号安全,请及时绑定邮箱和手机立即绑定

jq数组跟字符串转换

jq数组跟字符串转换

PHP
当年话下 2019-03-10 10:37:19
function encode($array) { if(version_compare(PHP_VERSION,'5.4.0','<')){ $str = json_encode($array); $str = preg_replace_callback("#\\\u([0-9a-f]{4})#i",function($matchs){ return iconv('UCS-2BE', 'UTF-8', pack('H4', $matchs[1])); },$str); return $str; }else{ return json_encode($array, JSON_UNESCAPED_UNICODE); } } 这是转换中文的函数;我从数据库中查出数据然后转为json格式,这是html中js; function test(){ var id = $(".father option:selected").val(); $.ajax({ url: 'regulation_type.php', type: 'post', data: {id:id , act:'ajax'}, success:function(msg){ //var str = '{"id":"2","title":"刑法的任务","parent_id":"1","chapter":"第一章"}'; //obj = JSON.parse(str); console.log(msg); str = msg.replace('[{','{'); str_1 = msg.replace('}]','}'); console.log(str_1); 直接输出msg,得到[{"id":"2","title":"刑法的任务","parent_id":"1","chapter":"第一章"}],外面套了个[],我以为是数组,用typeof看了下是字符串,obj = JSON.parse(json);输出obj.id没有值,然后单独写了{"id":"2","title":"刑法的任务","parent_id":"1","chapter":"第一章"};用obj = JSON.parse(json);输出obj.id有值,然后就想着把外面的[]去掉,可是怎么去都去不掉,str = msg.replace('[{','{');str_1 = msg.replace('}]','}');右边的可以去掉,可是左边的一直去不掉,有没有哪个大神知道原因的,求解,在线等!
查看完整描述

2 回答

?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

那你当数组取不就好了 返回的数组 以后返回多项删除[]就不能正确parse了啊

查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 742 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信