<code>public</code> <code>function</code> <code>alist()</code>
<code>{</code>
<code> </code><code>$this</code><code>->validateLogin();</code>
<code> </code><code>$this</code><code>->createurl();</code>
<code> </code><code>$article</code> <code>= M(</code><code>'article'</code><code>);</code>
<code> </code><code>$page</code> <code>= I(</code><code>'get.page'</code><code>);</code>
<code> </code><code>$perpage</code> <code>= 20;</code>
<code> </code><code>$page</code> <code>= (isset(</code><code>$page</code><code>) && (</code><code>$page</code><code>>0)) ? </code><code>$page</code> <code>: 1;</code><code>//current page</code>
<code> </code><code>$last</code> <code>= </code><code>$page</code> <code>- 1;</code>
<code> </code><code>$next</code> <code>= </code><code>$page</code> <code>+ 1;</code>
<code> </code><code>$url</code> <code>= </code><code>"http://"</code> <code>. </code><code>$_SERVER</code><code>[</code><code>'SERVER_NAME'</code><code>] . </code><code>$_SERVER</code><code>[</code><code>'PHP_SELF'</code><code>] . </code><code>"?page="</code><code>;</code>
<code> </code><code>$sum</code> <code>= </code><code>count</code><code>(</code><code>$article</code><code>->where(</code><code>"is_delete=0"</code><code>)->select());</code>
<code> </code><code>$pages</code> <code>= </code><code>ceil</code><code>(</code><code>$sum</code><code>/</code><code>$perpage</code><code>);</code>
<code> </code><code>$this</code><code>->assign(</code><code>'sum'</code><code>,</code><code>$sum</code><code>);</code>
<code> </code><code>$this</code><code>->assign(</code><code>'pages'</code> <code>,</code><code>$pages</code><code>);</code>
<code> </code><code>if</code> <code>(</code><code>$page</code> <code>> 1) {</code>
<code> </code><code>$arr</code> <code>= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>"1''>首頁</a>"</code><code>;</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$last</code> <code>. </code><code>"''>上一頁</a>"</code><code>;</code>
<code> </code><code>} </code><code>else</code> <code>{</code>
<code> </code><code>$arr</code> <code>= </code><code>"<a href='javascript:void(0)' class='noallow'>首頁</a>"</code><code>;</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='javascript:void(0)' class='noallow'>上一頁</a>"</code><code>;</code>
<code> </code><code>}</code>
<code> </code><code>if</code> <code>( (</code><code>$page</code><code>-2)>0 ) {</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$last</code> <code>. </code><code>"'' class=\"number\">"</code> <code>. (</code><code>$page</code><code>-2) . </code><code>"</a>"</code><code>;</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$last</code> <code>. </code><code>"'' class=\"number\">"</code> <code>. (</code><code>$page</code><code>-1) . </code><code>"</a>"</code><code>;</code>
<code> </code><code>} </code><code>else</code> <code>if</code><code>( ((</code><code>$page</code><code>-2)<=0) && ((</code><code>$page</code><code>-1)>0) ) {</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$last</code> <code>. </code><code>"'' class=\"number current\">"</code> <code>. (</code><code>$page</code><code>) . </code><code>"</a>"</code><code>;</code>
<code> </code><code>if</code> <code>( (</code><code>$page</code><code>+1)<=</code><code>$pages</code> <code>) {</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$next</code> <code>. </code><code>"'' class=\"number\">"</code> <code>. (</code><code>$page</code><code>+1) . </code><code>"</a>"</code><code>;</code>
<code> </code><code>if</code> <code>( (</code><code>$page</code><code>+2)<=</code><code>$pages</code> <code>) {</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$next</code> <code>. </code><code>"'' class=\"number\">"</code> <code>. (</code><code>$page</code><code>+2) . </code><code>"</a>"</code><code>;</code>
<code> </code><code>}</code>
<code> </code><code>if</code> <code>(</code><code>$page</code> <code>< </code><code>$pages</code><code>) {</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$next</code> <code>. </code><code>"''>下一頁</a>"</code><code>;</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='"</code> <code>. </code><code>$url</code> <code>. </code><code>$pages</code> <code>. </code><code>"''>尾頁</a>"</code><code>;</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='javascript:void(0)' class='noallow'>下一頁</a>"</code><code>;</code>
<code> </code><code>$arr</code> <code>.= </code><code>"<a href='javascript:void(0)' class='noallow'>尾頁</a>"</code><code>;</code>
<code> </code><code>$this</code><code>->assign(</code><code>'page'</code><code>,</code><code>$arr</code><code>);</code>
<code> </code><code>$data</code> <code>= </code><code>$article</code><code>->where(</code><code>"is_delete=0"</code><code>)->page(</code><code>$page</code><code>,</code><code>$perpage</code><code>)->select();</code>
<code> </code><code>$this</code><code>->assign(</code><code>'article'</code><code>,</code><code>$data</code><code>);</code>
<code> </code><code>$this</code><code>->display();</code>
<code>}</code>
本文轉自 陳小龍哈 51CTO部落格,原文連結:http://blog.51cto.com/chenxiaolong/1721552