今天把 base64_encode 一个字符用base64_decode后,
得到一个字符串 {"user_name":"323232","user_pwd":"fwefwefwegwefwef"}但是 json_decode()出是空,
json_last_error() 结果是3$data='{"user_name":"323232","user_pwd":"fwefwefwegwefwef"}';//数据base64_decode()的内容
print_r(json_decode($data);//空
print_r(json_last_error();//3把json 转换成对象一直是空白,网上找了好多解决方法都无效,求指点

解决方案 »

  1.   

    $data='{"user_name":"323232","user_pwd":"fwefwefwegwefwef"}';
    print_r(json_decode($data));//stdClass Object
    (
        [user_name] => 323232
        [user_pwd] => fwefwefwegwefwef
    )没有问题!
    JSON_ERROR_CTRL_CHAR Control character error, possibly incorrectly encoded
    控制字符错误,可能不正确地编码你应该贴出没有解码的 base64 原始数据
      

  2.   

    打印你的类型,是不是utf8的,var_dump一下就知道原因了
      

  3.   

    echo phpinfo();然后在页面看有没有开启json,5.1以下版本应该是没有开启的
      

  4.   


    $data='{"user_name":"323232","user_pwd":"fwefwefwegwefwef"}';//数据base64_decode()的内容
    print_r(json_decode($data));
    print_r(json_last_error();
    stdClass Object ( [user_name] => 323232 [user_pwd] => fwefwefwegwefwef )
    0
    没有问题。