服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|JavaScript|易语言|

服务器之家 - 编程语言 - PHP教程 - CodeIgniter分页类pagination使用方法示例

CodeIgniter分页类pagination使用方法示例

2021-01-05 15:11xiangmingliang123 PHP教程

这篇文章主要介绍了CodeIgniter分页类pagination使用方法,结合实例形式简单分析了CodeIgniter框架中的分页类pagination基本的配置与使用技巧,需要的朋友可以参考下

本文实例讲述了CodeIgniter分页类pagination使用方法。分享给大家供大家参考,具体如下:

controller控制器(application/controller/page.php文件):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
public function index()
{
    $this->load->model ( 'home_model' , '' , TRUE);
    $config= array();
    $config['per_page'] = $this->per_page; //每页显示的数据数
    $current_page    = intval($this->input->get_post('per_page',true)); //获取当前分页页码数
    //page还原
    if(0 == $current_page)
    {
      $current_page = 1;
    }
    $offset = ($current_page - 1 ) * $config['per_page']; //设置偏移量 限定 数据查询 起始位置(从 $offset 条开始)
    $result = $this->home_model->index($offset,$config['per_page'],$order='id desc');
    $config['base_url']      = $this->config->item('base_url').'admin/home/index?';
    $config['first_link']     = $this->first_link;//首页
    $config['prev_link']     = $this->prev_link;//上一页
    $config['next_link']     = $this->next_link;//下一页
    $config['last_link']     = $this->last_link;//尾页
    $config['total_rows']     = $result['total'];//总条数
    $config['num_links'] = 3;//页码连接数
    $config['use_page_numbers']  = TRUE;
    $config['page_query_string'] = TRUE;
    $this->load->library('pagination');//加载ci pagination类
    $this->pagination->initialize($config);
    $result = array(
        'list' => $result['list'],
        'total'  => $result['total'],
        'current_page' => $current_page,
        'per_page' => $config['per_page'],
        'page'  => $this->pagination->create_links(),
    );
    $this->load->view ( 'admin/home' , $result );
}

model模型(application/model/home_model.php文件):

?
1
2
3
4
5
6
7
8
public function index($offset,$num,$order='id desc')
{
    $query = $this->db->query( "SELECT Name_cn,Mall_type,create_time FROM smzdm_mall WHERE Is_deleted = 0 order by {$order} limit {$offset},{$num}");
    return array(
        'total' => $this->db->count_all('smzdm_mall',array('Is_deleted'=>'0')),
        'list' => $query->result(),
    );
}

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

延伸 · 阅读

精彩推荐