【发布时间】:2013-02-10 10:03:24
【问题描述】:
我正在初始化一个由 49605 key=>value 对组成的巨大数组)(该数组将永远不会再更改)
$boardkey_to_values=数组(97031=>0,97531=>1,409531=>2,410031=>3,410131=>4,472031=>5,472531=>6,472631=>7,472651=>7, 484531=>8,485031=>9,485151=>10,485131=>10,...)
问题是编译器需要花费大量时间(平均 40 毫秒)
我想知道它们是否可以成为更快的解决方案。
我在我的程序中使用了很大一部分键(15-35k)。我之前在 where_in 中使用 MySQL,但它甚至更慢(平均 6 秒),我得到了硬编码的建议,确实,它快得多,但我想进一步优化它。见原帖String to Value compare Optimizing MySQL Query
【问题讨论】:
-
将数据存储在数据库中可能会更快,并且仅在需要时加载所需的特定条目
-
你从哪里得到的原始数组从数据库或文件?
-
取决于您打算对数组做什么。你能提供一些背景信息吗?
-
确实,这里缺少上下文,您能否详细解释一下此解决方案所针对的总体问题?我猜你可以将该数组切割成更小的“子数组”,并且只使用你实际需要的那些而不是整个 50K 项。
-
[查看这个相关问题][1] [1]:stackoverflow.com/questions/2120401/…
标签: php arrays initialization