zoukankan      html  css  js  c++  java
  • php json_encode输出为空问题

    这种情况一般是json_encode序列化数组时出现错误,错误原因有很多,可以通过json_last_error函数来查看错误原因!!!

    可能的原因

    -----------------------------------------------------------

    1、反斜杠,可以用stripslashes() 函数删除由 addslashes() 函数添加的反斜杠,可能还要用到urlencode ()— 编码 URL 字符串

    -----------------------------------------------------------

    json_last_error函数手册地址(http://www.php.net/manual/zh/function.json-last-error.php)

    -----------------------------------------------------------

    (PHP 5 >= 5.3.0, PHP 7)

    json_last_error — 返回最后发生的错误

    说明

    -----------------------------------------------------------

    int json_last_error ( void ) 如果有,返回 JSON 编码解码时最后发生的错误。

    参数

    -----------------------------------------------------------

    此函数没有参数。

    返回值

    -----------------------------------------------------------

    返回一个整型(integer),这个值会是以下的常量之一:

    JSON_ERROR_NONE 没有错误发生  
    JSON_ERROR_DEPTH 到达了最大堆栈深度  
    JSON_ERROR_STATE_MISMATCH 无效或异常的 JSON  
    JSON_ERROR_CTRL_CHAR 控制字符错误,可能是编码不对  
    JSON_ERROR_SYNTAX 语法错误  
    JSON_ERROR_UTF8 异常的 UTF-8 字符,也许是因为不正确的编码。 PHP 5.3.3
    JSON_ERROR_RECURSION One or more recursive references in the value to be encoded PHP 5.5.0
    JSON_ERROR_INF_OR_NAN One or more NAN or INF values in the value to be encoded PHP 5.5.0
    JSON_ERROR_UNSUPPORTED_TYPE 指定的类型,值无法编码。 PHP 5.5.0
    JSON_ERROR_INVALID_PROPERTY_NAME 指定的属性名无法编码。 PHP 7.0.0
    JSON_ERROR_UTF16 畸形的 UTF-16 字符,可能因为字符编码不正确。 PHP 7.0.0

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    echo json_encode(array('error' => '0', 'message' => '没有错误'));

    var_dump(json_last_error());

    //这里也可以是json_decode

    //错误码对照

    0 JSON_ERROR_NONE

    1 JSON_ERROR_DEPTH

    2 JSON_ERROR_STATE_MISMATCH

    3 JSON_ERROR_CTRL_CHAR

    4 JSON_ERROR_SYNTAX

    5 JSON_ERROR_UTF8

    6 JSON_ERROR_RECURSION

    7 JSON_ERROR_INF_OR_NAN

    8 JSON_ERROR_UNSUPPORTED_TYPE

  • 相关阅读:
    C#解析数组形式的json数据
    js中的Array数组清空
    H5在js中向指定的元素添加样式
    C#的扩展方法
    C#常用设计模式
    Peasy.NET学习之并发问题处理
    dev中 ,usercontrol打印界面内容,打印预览和打印
    PL SQL 存储过程 SQL SERVER创建存储过程及调用,Oracle创建存储过程及调用
    C# 事务的创建,提交和回滚
    dev 中 字符串转中文拼音缩写,对grid列表进行模糊匹配,grid获取焦点行,gridlookupedit控件用拼音模糊匹配下拉选项
  • 原文地址:https://www.cnblogs.com/xwlong/p/7451832.html
Copyright © 2011-2022 走看看