PHP中的多个“foreach”查询会减慢页面加载吗?

时间:2010-01-30 04:05:01

标签: php

通过PHP查询数据时,如果我可以单独存储项目,是否会显着减慢页面加载时间?

例如,一次拉入三个项目:

<?php foreach ($example->get_items(0,3) as $item): ?>

Versus分别致电:

<?php foreach ($example->get_items(0,1) as $item): ?>
<?php foreach ($example->get_items(0,1) as $item): ?>
<?php foreach ($example->get_items(0,1) as $item): ?>

2 个答案:

答案 0 :(得分:3)

如果你问三个顺序循环结构的开销是否与完全相同的数据相比,或者循环使用3-4个项目而不是单独调用它们会影响页面性能,答案是否定的。

过多的代码,往返其他服务器等会影响页面性能。缓存不足会影响页面性能。但语句和函数调用开销(除非你的数万人都很好)是微优化和无关紧要的分心。

因此,如果您从查询中一次选择一行并执行该查询一百次,然后将该查询更改为一次调用但返回所有一百行,那么这将会产生影响。

但是不要冒这样的小东西,if / else vs switch和微问题。担心可读性和正确性。

答案 1 :(得分:0)

循环总是会减慢你的页面加载速度,但是我不相信循环和手动调用这三个项目之间的区别会很明显。

我会采用让您的代码更清洁的方法:

<?php foreach ($example->get_items(0,3) as $item): ?>