PHP <select>框创建很慢</select>

时间:2013-03-11 14:37:36

标签: php

我有一个包含2组2个选择框的网站,每个框包含大约5,000条记录,每组包含相同的数据,只是以不同的顺序显示,数据存储在mysql表中。

我发现这些下拉框的创建/加载速度大约是每盒1-2秒,我想知道是否有任何小技巧可以帮助加快速度?

我尝试只检索一次数据,进入一个数组,使用数组,然后从中创建第二个下拉框,但这甚至更慢。

除了每个下拉列表中的一条记录“可能”需要标记为“已选择”这一事实外,该列表的内容通常是静态的。

考虑到这一点,我尝试创建每个列表的内容“每个会话一次”,然后执行str_replace()将必要的记录标记为“已选择”,但这需要在所有四个框上花费很长时间以防止页面出现装载。

任何建议或想法都将非常受欢迎

由于

1 个答案:

答案 0 :(得分:0)

加载速度降低到程序中的几个点。

  • 首先,您要从给定的数据库中提取5,000条记录 订单(两次)。

  • 然后,您将循环浏览这些项目以将其转换为HTML 输出

  • 然后您将页面中的所有10,000个项目发送到浏览器。

  • 最后,浏览器需要在页面上呈现这些项目。

您可以通过减少项目数来加快所有这一切。例如,不是提供世界上所有城镇的列表,而是提供文本框,用户可以进入城镇以减小列表的大小。然后,您可以通过获取较小的匹配城镇列表来改进体验,以供他们选择(甚至将其作为AJAX请求实现,这样他们就不需要提交页面来获取列表)。