贾摆意思 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 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法