php读取大的json文件, 大约150M,有啥高效的办法?

39次阅读

共计 868 个字符,预计需要花费 3 分钟才能阅读完成。

目前用常规办法读取,很慢,时常把内存搞崩溃,失去响应

有啥高效的办法?

网友回复:

注册 1. 使用 JSON Streaming:JSON Streaming 是一种流式处理 JSON 数据的方法,可以避免将整个 JSON 文件加载到内存中。这种方法可以使用 PHP 的 fopen 和 fgets 函数来读取 JSON 文件的每一行,然后逐行解析 JSON 数据。2. 使用 JSON Lines 格式:JSON Lines 是一种每行一个 JSON 对象的格式,可以更容易地处理大型 JSON 文件。这种格式可以使用 PHP 的 file 函数来逐行读取文件,并使用 json_decode 函数解析 JSON 数据。3. 使用缓存:将 JSON 文件分成多个小文件,并使用缓存技术(如 Memcached 或 Redis)将读取的 JSON 数据缓存起来,可以提高读取速度和效率。4. 使用索引:对于经常需要查询的数据,可以在读取 JSON 文件时创建索引,以便快速查找数据。5. 使用适当的 JSON 解析器:PHP 提供了多种 JSON 解析器,如 json_decode、json_encode、json_last_error 等,使用适当的解析器可以提高读取效率。

michael007 有没有听说过数据库

机长 什么东西这么大

jqbaobao 150m 的 json 文件 你这什么站,需要这个?

ouou8 看看有啥好办法

xbnong 怎么有股 GPT 味道

qqlzm 150m 用 json 存?你找个 sqlite 也好啊

Akewa 那就分批读啊。这都不会?

liugogal java 逐行读取还是很好用

注册 json 文件不是逐行存储的

注册 而且为了压缩体积,实践中 json 只有一行的比比皆是

gdtv 传说中的文本数据库吗

NiDiPiZiNaFongQ 羡慕大佬的 JSON 都有 150M 我自己的连 150byte 都没有

opelnic 本地转一下吧,

lwsg1987 为什么会有 150m 的 json

920 本地转成几个小文件

枝江小狼王 realtime database

小小书童 你写个程序录入到数据库呗 …

bfrs 用 JSON Streaming, 楼上有说

正文完
 0