开发者社区> 问答> 正文

为什么后端经常会将一个空数组返回为 null ?

后端写的 api ,返回如下的 json 数据

{"status":0,"data":{"applies":null,"total":"0"},"message":""}
其中 applies 字段返回的类型应该是数组。

但是记录数为0的情况下,为何会返回 null 而不是 []

后者不是更符合规范吗?

还是说后端有不得已的苦衷?

展开
收起
爵霸 2016-03-05 10:56:12 4940 0
1 条回答
写回答
取消 提交回答
  • 这个应该是后端代码不够严谨吧。比如后端可以加一个判断,如果 applies 是一个array,但是没有值,也需要用array,不能使用NULL 等。
    测试代码:

    $c;
    
    $arr = array(
        'status' => 1, 
        'data' => array(
            'a' => 111,
            'b' => array(),
            'c' => $c,
            'd' => (empty($c) ? array() : $c)
        )
    );
    
    echo json_encode($arr);

    输出为:

    {
    status: 1,
    data: {
    a: 111,
    b: [ ],
    c: null,
    d: [ ]
    }
    }
    2019-07-17 18:53:02
    赞同 1 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
十分钟上线-使用函数计算构建支付宝小程序服务 立即下载
机器学习在互联网后端技术中的应用 立即下载
低代码开发师(初级)实战教程 立即下载