Jadual Kandungan
smarty简单分页的实现方法,smarty分页实现
PHP怎实现数字分页效果?smarty里怎调用了?怎使用php代码来循环页数?
smarty 分页问题
Rumah pembangunan bahagian belakang tutorial php smarty简单分页的实现方法,smarty分页实现_PHP教程

smarty简单分页的实现方法,smarty分页实现_PHP教程

Jul 13, 2016 am 10:15 AM
smarty

smarty简单分页的实现方法,smarty分页实现

本文实例讲述了smarty简单分页的实现方法,分享给大家供大家参考。具体实现方法如下:

以下是模板中的smarty代码,用smarty简单的代入相关的变量就行了,非常简单,但是在php代码中还要传入page这个参数。我觉得这样分挺好,非常简单。我越来越喜欢用smarty了。
 
Php代码如下:

复制代码 代码如下:
{if $pageCount > 1} 
{foreach  item=i from=$pagerList} 
  {if $pageNum eq $i} 
  {$i}   
  {else} 
{$i}   
{/if} 
{/foreach} 
{if $pageNum eq 1} 
上一页   
{else} 
上一页   
{/if} 
{if $pageNum eq $pageCount } 
下一页   
{else} 
下一页   
{/if} 
{if $pageNum eq 1} 
首页   
{else} 
首页   
{/if} 
          
{if $pageNum eq $pageCount} 
最后一页   
{else} 
最后一页   
{/if} 
{/if} 
(共{$pageCount}页)
 

这里只是给出一个思想,其实分页没有那么复杂。

希望本文所述对大家的PHP程序设计有所帮助。

PHP怎实现数字分页效果?smarty里怎调用了?怎使用php代码来循环页数?

有一个php系统我看他是用的smarty ,你可以参考下
ecshop
商城程序,我也打算学,今年过年就开始试着做一个系统,给予smarty的
 

smarty 分页问题

第一种方法:
思路是根据页号取出两部分数据,比如取出前90条,然后取出前100条,然后比较取出两次结果的差集。

在30万条记录的情况下,如果只分100页(结果有10000条记录),大约需要1分半钟。索引建得好的话,1分钟左右。

//select * from //这一句是不能修改的了,因为它是从结果中读取,所以必须要用*
//(select top @h_count (@filedlist) from @tableName .....) as big //取出符合条件的上限的记录
//where
//big.guid //这里是关键,根据主键从下限结果中过滤掉重复的记录(只留下不同的数据,也就是求交集)
//not in
//(select top @l_count guid from @table .....)//下限
//order @orderby //原来的格式,这里只保留了orderby之后的,应该保留条件之后所有的,包括gruopby什么的

函数类似如此:
public string MakeSqlPager(string sourceSql,int pageIndex)
{
//使用默认页面大小
string orderbyStr=sourceSql.Substring(sourceSql.ToLower().IndexOf("order by"));
int index=sourceSql.ToLower().IndexOf("select");
string bigRes="("+ sourceSql.Insert(index+6," top "+((pageIndex+1)*_pageSize).ToString()+" ")+") as big";
string smallRes="("+ sourceSql.Insert(index+6," top "+(pageIndex*_pageSize).ToString()+" ")+")";
return "select * from "+bigRes+" where big.guid not in "+smallRes+" "+orderbyStr;
}

这种方法还可以改进,就是第二次取过滤时从第一个的结果里面过滤。

第二种方法:
掐头去尾,程序还没写
SELECT * FROM
(
SELECT TOP 100 * FROM
(
SELECT TOP 100000 * FROM pagetest ORDER BY regt ASC
) as a
ORDER BY regt desc
) as b
ORDER BY regt ASC

测试了一下,大约用时间29秒。

比较:
第一种方法的效率很低,猜测是因为多次需要循环比较,时间复杂度要高一个等级。比如,这种方法的响应时间和所取得的页号有很大关系。
第二种方法还是可以接受的,......余下全文>>
 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/901286.htmlTechArticlesmarty简单分页的实现方法,smarty分页实现 本文实例讲述了smarty简单分页的实现方法,分享给大家供大家参考。具体实现方法如下: 以下是...
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Muzium Dua Point: Semua Pameran dan Di Mana Mencari Mereka
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan PHP dan Smarty untuk mencapai pembangunan pemisahan bahagian hadapan dan belakang Cara menggunakan PHP dan Smarty untuk mencapai pembangunan pemisahan bahagian hadapan dan belakang Jun 25, 2023 pm 01:46 PM

Dalam pembangunan web moden, pemisahan bahagian hadapan dan bahagian belakang telah menjadi trend yang sangat popular, yang membolehkan pembangun mengatur projek dengan lebih baik dan meningkatkan kecekapan pembangunan projek. PHP dan Smarty ialah dua teknologi yang sangat biasa digunakan, yang boleh digunakan untuk mencapai pembangunan pemisahan bahagian hadapan dan belakang. Artikel ini akan memperkenalkan cara menggunakan PHP dan Smarty untuk mencapai pembangunan pemisahan bahagian hadapan dan belakang. Apakah pembangunan pemisahan bahagian hadapan dan bahagian belakang Dalam pembangunan web tradisional, bahagian hadapan bertanggungjawab terutamanya untuk pembentangan halaman dan logik interaksi dengan bahagian belakang. Bahagian belakang bertanggungjawab terutamanya untuk perniagaan

Kajian awal tentang Smarty, enjin templat dalam PHP Kajian awal tentang Smarty, enjin templat dalam PHP May 11, 2023 pm 05:15 PM

Pada masa kini, pembangunan laman web tidak dapat dipisahkan daripada enjin templat komponen yang penting. Enjin templat merujuk kepada alat yang menggabungkan templat halaman dan data untuk menjana kod HTML dengan format tertentu. Dalam pelbagai rangka kerja pembangunan laman web, enjin templat merupakan komponen penting, kerana enjin templat boleh mengurangkan pertindihan kod dan meningkatkan dinamik halaman dengan banyak. Salah satu enjin templat yang paling biasa dan popular ialah Smarty. Smarty ialah DSL (DomainSpecif

Cara menggunakan enjin templat Smarty dalam pembangunan PHP Cara menggunakan enjin templat Smarty dalam pembangunan PHP Jun 27, 2023 pm 01:28 PM

Sebagai pembangun PHP, menggunakan enjin templat adalah pilihan semula jadi. Smarty ialah enjin templat popular yang menyediakan cara untuk memisahkan HTML/CSS/JavaScript daripada kod PHP, membolehkan pembangun mengatur dan mengurus projek dengan lebih baik. Dalam artikel ini, kita akan belajar cara menggunakan enjin templat Smarty semasa pembangunan PHP. 1. Pasang Smarty Sebelum ini, kita mesti memasang Smarty. Dalam artikel ini kami akan menggunakan Komposer untuk memasang

Cara menggunakan PHP dan enjin templat Smarty Cara menggunakan PHP dan enjin templat Smarty May 11, 2023 pm 03:33 PM

PHP ialah bahasa skrip sebelah pelayan yang berkuasa yang boleh digunakan untuk membangunkan aplikasi web. Pada hari-hari awal pembangunan web, pengaturcara menggunakan banyak kod HTML dan JavaScript untuk membangunkan aplikasi web. Walau bagaimanapun, pendekatan ini sukar untuk dikekalkan dan diurus kerana kod HTML dan JavaScript boleh menjadi sangat kompleks. Untuk menyelesaikan masalah ini, enjin templat Smarty telah dicipta. Smarty ialah enjin templat yang dibangunkan berdasarkan PHP untuk mengurus dan menjana W

Apa itu thinkphp dan smarty Apa itu thinkphp dan smarty Jun 14, 2022 pm 05:56 PM

thinkphp ialah rangka kerja PHP ringan sumber terbuka yang digunakan untuk memudahkan pembangunan aplikasi perusahaan dan pembangunan aplikasi WEB tangkas menggunakan ThinkPHP, pembangun boleh membangunkan dan menggunakan aplikasi dengan lebih mudah dan cepat. Smarty ialah enjin templat PHP yang lebih baik boleh membantu pembangun mengasingkan logik program dan paparan halaman (pemisahan logik perniagaan dan logik paparan), supaya pengaturcara boleh menukar kandungan logik program tanpa menjejaskan reka bentuk halaman kakitangan bahagian hadapan, dan kakitangan bahagian hadapan boleh semula- Mengubah suai halaman tidak akan menjejaskan logik program program.

Bagaimana untuk menggunakan Smarty dengan CakePHP? Bagaimana untuk menggunakan Smarty dengan CakePHP? Jun 03, 2023 pm 03:10 PM

CakePHP ialah rangka kerja PHP sumber terbuka yang menyediakan ciri dan alatan yang kaya untuk mempercepatkan pembangunan aplikasi web. Salah satu ciri yang berkuasa ialah enjin templat. Secara lalai, CakePHP menggunakan sintaks asli PHP untuk pemaparan paparan. Walau bagaimanapun, kadangkala kita mungkin mahu menggunakan enjin templat lain, seperti Smarty. Artikel ini akan memperkenalkan cara menggunakan Smarty dalam CakePHP. 1. Apakah Smarty? Smarty ialah rangka kerja PHP berasaskan templat yang

Cara menggunakan Smarty SSTi Cara menggunakan Smarty SSTi May 15, 2023 am 11:37 AM

Perihalan tajuk: Tajuk menyediakan API untuk membaca tajuk XFF Terdapat perkataan BuildWithSmarty di bahagian bawah halaman Ia boleh ditentukan bahawa ia ditulis dengan enjin Smarty daripada SSTi. Tukar pengepala xff daripada 127.0.0.1 kepada Hasil berikut muncul pada 127.0.0{1+2}. Tidak diragukan lagi, muatan akhir X-Forwarded-For:{ifvar_dump(file_get_contents('/flag'))}{ /if}SmartySSTI menggunakan Smarty dan dibangunkan berdasarkan PHP

Aplikasi enjin templat Smarty dalam pembangunan PHP Aplikasi enjin templat Smarty dalam pembangunan PHP Jun 14, 2023 pm 02:02 PM

Dengan perkembangan pesat dan peningkatan Internet, PHP, sebagai bahasa pengaturcaraan yang digunakan secara meluas dalam pembangunan aplikasi Web, secara beransur-ansur menjadi bahasa pengaturcaraan yang sangat popular dalam industri. Walau bagaimanapun, dalam proses pembangunan PHP, kaedah pelaksanaan kod tradisional sering membawa kepada penurunan kebolehbacaan dan kebolehselenggaraan kod. Pada masa ini, enjin templat yang cekap menjadi salah satu penyelesaian. Di antara banyak enjin templat, Smarty telah menjadi pilihan popular di kalangan pembangun PHP kerana fungsinya yang berkuasa dan prestasi yang baik. Artikel ini akan terperinci

See all articles