贾摆意思 2015-12-03 08:26 采纳率: 0%
浏览 2206

php中url接收的json数据,json_decode为空

#php后台json数据decode为结果空#
我使用手机传输数据到php后台,json_decode的结果为空。
手机传输的方式为POST/GET,编码格式为UTF-8。
json数据为(包括代码中的单引号,我用字符串传输,json数据中必须为双引号):

   '{"agent":"30","job":"1133","students":[{"working_hours_unit":"null","working_hours":"6","student_id":"191","commission_unit":"null","wage":"58","commission":"348","wage_unit":"null"}]}'

php代码获取到了以上json数据,并且能够使用echo输出。php代码:

 $str=$_GET('my_str'); echo $str;

输出测试结果然后我接着decode接收到的json数据,代码:

 $form = json_decode($Noel,true); var_dump($form);

但很意外输出为**null** ,然后我用_echo json_last_error();_输出json转换错误,结果为4===json语法错误。
附上完整代码和截图:

     $str=$_GET('my_str');  echo $str;$form = json_decode($str,true); var_dump($form); echo json_last_error();

页面输出结果
但是,当我把接收到的json单独接到PHP代码中,然后decode却能够正确解析。(我内心是崩溃的 〒_〒)
代码:`

     $orm='{"agent":"30","job":"1133","students":[{"working_hours_unit":"null","working_hours":"6","student_id":"191","commission_unit":"null","wage":"58","commission":"348","wage_unit":"null"}]}';  $arr=json_decode($form,true);  var_dump($arr);

截图:
图片说明

  • 写回答

2条回答 默认 最新

  • sixrm666 2015-12-03 08:54
    关注

    $encode = mb_detect_encoding($resultJson, array('ASCII','UTF-8','GB2312','GBK','BIG5'));
    echo $encode;
    用这个查看下传过来的编码,以前我也以为传过来的一定是UTF-8,最后发现不是。。。。
    希望能帮到你。

    评论

报告相同问题?

悬赏问题

  • ¥15 MATLAB怎么通过柱坐标变换画开口是圆形的旋转抛物面?
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿