我正在研究php / mysql Web应用程序的优化。 我面临的问题是功能的结果真的很大!像4MB。
我在HTML-php文件中调用一个函数:
<table id="example1" class="table table-bordered table-striped table-hover" width="100%">
<thead>
<tr><th>
.
.
.</thead>
<?php
$results = $diosAdminMain->getResults();
echo $results;
?>
</table>
并且应该从我的数据库中获取结果,然后在Datatables的帮助下展示它们。
我的类文件中的是我的函数
<?php
$diosAdminMain = new diosCore;
class diosCore{
public function getResults(){
$myhtml='<tbody>';
.
.
.
$resultqry=mysql_query('SELECT * from table');
while($row = mysql_fetch_assoc($resultqry)){
$myhtml.= '<tr>
<td>'.$row['ID'].'</td>
<td>'.$row['PR1'].'</td>
<td>'.$row['PR2'].'</td>
<td>'.$row['THL1'].'</td>
<td>'.$row['THL2'].'</td>
<td>'.$row['NAME1'].'</td>
<td>'.$row['NAME2'].'</td>';
}
$myhtml.='</tbody>';
return $myhtml;
}
}
.
.
?>
我试图找到一种方法来使这个演示文稿更快,因为结果会增长更多。现在有1800行,需要大约20秒才能在chrome上显示。
通过我没有数据表的测量,它只节省了我1-2秒(我不想删除它,因为快速搜索很棒)。 我也尝试优化mysql查询和函数内部的逻辑流程但结果相同。 所以我将该函数的结果导出为纯文本,并发现这只是一个4MB大小的结果。
有没有办法以某种方式抑制$ myhtml变量的大小以使事情变得更快?或者我错过的任何其他方式?
感谢
答案 0 :(得分:1)
您应该考虑逐页显示结果。在没有性能影响的情况下,无法在页面中显示大量数据。每页显示50行或100行将更快,并且可以处理所有数据量。