PHP 数组异常,不正常,有哪些可能的原因?

2020-10-10 19:02:14 +08:00
 s609926202

$arr = ...; $arr 是一个数据库查询结果数组,通过 json_encode 返回给客户端。

目前的问题是,$arr 不能返回,状态码为 200,但是没有数据。以下是测试结果:

  1. 通过 json_encode($arr)为 false
  2. 通过 is_array($arr) 为 1
  3. 通过 print_r($arr) 和 var_dump($arr)可以打印完整的数组。
  4. 通过 array_slice($arr, 0, 2) 不能切割,返回 false
  5. 通过$arr[0]$arr[200]可以正常获取数组对象

$arr 总共 355 个数组对象,总大小也就 600 多 kb,所以不应该是数组过大导致的吧(不太确定)? nginx 及 php 错误日期也没有产生报错信息,请问会是什么原因导致的呢?

869 次点击
所在节点    问与答
2 条回复
lujjjh
2020-10-10 20:02:54 +08:00
shawn4me
2020-10-10 20:14:44 +08:00
数组对象应该是要先序列化,对象好像不能直接 json 编码?你试试先序列化。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/713764

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX