PHP - 推荐的最大阵列大小 - 替代方案?

时间:2010-08-29 12:01:30

标签: php json

我正在撰写一个包含约160条记录的Google地图页面,每个位置都有1条记录。 原始地图数据保存在sql表中。因为有很多文字 这可能是每条记录最多900个字符。

我在我的月份过滤了这些数据,因此地图上可能会有20到30条记录显示为标记。 我希望用户在几个月之间快速切换,所以我想保持数据本地(不运行SQL查询)。

将所有这些数据从SQL中读取到php数组(比如说最大150k)是一个好主意(即坐在ram中)还是真的不重要?

Json更好吗? (之前从未尝试过这个)。

1 个答案:

答案 0 :(得分:0)

将数据加载到内存中仅适用于每个请求,10个请求= 10x数据加载。如果您拥有大量数据,就像您一样,将所有内容加载到内存中是一个不错的想法。你将浪费内存并加载数据库(特别是如果许多用户同时使用它)。

您最好使用AJAX并仅请求您需要的数据并在用户端缓存它(存储在Hash表中)。您将获得巨大的性能提升。如果您不熟悉AJAX和json,请查看JavaScript框架 - MootoolsJQuery。它们都是很棒的框架,我个人更喜欢Mootools; - )。

但是,如果你仍然想按照自己的方式去做。它必须这样做:

  1. 将数据从数据库加载到对象数组($ data)
  2. 对数据json_encode($ data)
  3. 进行编码
  4. 将编码数据存储到页面上的某个隐藏输入元素
  5. 在页面上,使用JavaScript从隐藏的输入中获取存储的数据,对其进行解码并对其进行处理......
  6. 这样负载将转到用户的浏览器上。