Heim >Backend-Entwicklung >PHP-Tutorial >php分页代码与分页原理小例子

php分页代码与分页原理小例子

WBOY
WBOYOriginal
2016-07-25 08:52:501104Durchsuche
  1. if ($_get['count']) {
  2. $count = $_get['count'];
  3. } else {
  4. $count =select count(*) from tablename where …..
  5. }
复制代码

如果只有第一页才计算总数,后面的页数都不用了,这样是不是就可以提升了效率。 还有这么种情况,也就是在模糊查询的情况下,有一个应用,我估计大部分查询结果数小于20,也就是都只有一页结果,那么如果都去计算总数是没有必要的,而且模糊查询效率也比较低。所以我突然想到跳出原来的思维,为什么一定要先计算总行数,再取列表呢?

可以先查询列表,如果列表结果数=20,那么再查询总行数,因为小于20的话,其实只有一页。 总行数就等于查出来的列表结果数。 伪代码为:

  1. if ($_get['page']$list = select * from tablename where … limit 0,20 第一页时直接查询前20条
  2. if (count($list)=20) {
  3. $count =select count(*) from tablename where …..
  4. } else {
  5. $count =count($list);
  6. }
  7. } else {
  8. $count = $_get['count'];
  9. $list = select * from tablename where … limit page-1*20,page-1*20+20
  10. }
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn