【问题标题】:PHP - Load too much array data caused page not responding?PHP - 加载太多数组数据导致页面无响应?
【发布时间】:2016-05-25 10:46:28
【问题描述】:

我不知道如何解释这一点,但当我使用 61 mb json 数据执行 json_decode(string_json, true) 时,我的实时服务器似乎有问题。

我已经尝试在 php 上查找数组大小的最大值,但这根本没有帮助,因为我已经在我的实时服务器上设置了memory_limit = -1,而我得到的奇怪的事情是,当我加载这个页面时完全没有问题它在我的本地服务器上。

顺便说一句,我已经确定这是我的问题的根源,因为我只是试图注释掉我的解码 json 代码行,然后我的页面就可以工作了。

那么有什么办法可以解决这个问题吗?我已经尝试了不同的浏览器和网络,但它保持相同的错误,而不是当我注释掉 json_decode 行时。

【问题讨论】:

  • 当我使用 61 mb json 数据执行 json_decode(string_json, true) 时,我的实时服务器似乎有问题。 ... 61MB JSON?必须有更好的方法来做你正在尝试的事情。
  • seems my live server have problem when I'm doing json_decode(string_json, true) with __61 mb json data__. 你不说!.... PHP 数组占用大量内存;没有关于数组最大大小的文档,因为您几乎肯定会首先耗尽内存;但这是一个非常大的数据量,肯定会造成内存问题
  • 也许像github.com/salsify/jsonstreamingparser 这样的东西可能会有所帮助
  • @MarkBaker 我会尝试使用它,关于内存问题,我认为如果我在本地运行它会得到相同的结果。我的实时服务器比我的本地服务器有更好的规范。

标签: php arrays json server apache2


【解决方案1】:

您是否尝试增加脚本的 max_execution_time? http://php.net/manual/en/function.set-time-limit.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-09
    • 2011-03-25
    • 2021-04-17
    • 2011-10-06
    • 2012-11-23
    • 2011-09-22
    相关资源
    最近更新 更多