You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CodeIgniter分页函数调用异常:自定义分页无法正常显示

解决自定义分页函数无法显示的问题

兄弟,看你贴的代码明显没写完,先帮你梳理下几个大概率导致分页不显示的坑,一步步排查:


1. 先补全缺失的分页配置

你代码里$config['cur...'截断了,当前页标签(cur_tag_open/cur_tag_close)是分页样式渲染的关键项,必须补全。另外还有几个核心必填参数绝对不能少:

public function pagination(){
    // 核心分页参数(必须配置)
    $config['base_url'] = site_url('你的控制器/目标方法'); // 分页跳转的基础URL
    $config['total_rows'] = $this->db->count_all('你的数据表名'); // 总记录数
    $config['per_page'] = 10; // 每页显示条数

    // 你写了一半的样式配置补全+修正转义问题
    $config['full_tag_open'] = "<ul class='pagination'>";
    $config['full_tag_close'] = '</ul>';
    $config['num_tag_open'] = '<li>';
    $config['num_tag_close'] = '</li>';
    $config['cur_tag_open'] = '<li class="active"><a href="#">';
    $config['cur_tag_close'] = '</a></li>';
    // 可选:补上前一页、后一页的标签配置
    $config['prev_tag_open'] = '<li>';
    $config['prev_tag_close'] = '</li>';
    $config['next_tag_open'] = '<li>';
    $config['next_tag_close'] = '</li>';
}

⚠️ 注意:你原来用的&lt;/&gt;转义字符没必要,直接写</>就行,转义后浏览器会把标签当成文本显示,导致分页样式失效。

2. 别忘了初始化分页类

写完配置后,必须加载分页库并初始化配置,不然所有设置都是白搭:

// 放在配置代码之后
$this->load->library('pagination');
$this->pagination->initialize($config);

3. 视图里要输出分页链接

后端配置好后,要把分页生成的HTML传递到视图并输出:

// 在控制器里把分页链接赋值给变量
$data['page_links'] = $this->pagination->create_links();
$this->load->view('你的视图文件', $data);

然后在对应视图的合适位置(比如列表下方)添加:

<?php echo $page_links; ?>

4. 列表数据要配合分页查询

如果只是分页配置对了,但列表查询没加limit和offset,分页链接就算显示了也没实际效果:

// 获取URL中的偏移量(默认从第0条开始)
$offset = $this->uri->segment(3, 0);
// 分页查询数据
$data['list_data'] = $this->db->limit($config['per_page'], $offset)->get('你的数据表名')->result();

完整可参考的示例函数

public function pagination(){
    // 1. 核心分页配置
    $config['base_url'] = site_url('article/list');
    $config['total_rows'] = $this->db->count_all('articles');
    $config['per_page'] = 10;

    // 2. 分页样式配置
    $config['full_tag_open'] = "<ul class='pagination'>";
    $config['full_tag_close'] = '</ul>';
    $config['num_tag_open'] = '<li>';
    $config['num_tag_close'] = '</li>';
    $config['cur_tag_open'] = '<li class="active"><a href="#">';
    $config['cur_tag_close'] = '</a></li>';
    $config['prev_link'] = '上一页';
    $config['next_link'] = '下一页';

    // 3. 加载并初始化分页
    $this->load->library('pagination');
    $this->pagination->initialize($config);

    // 4. 分页查询数据
    $offset = $this->uri->segment(3, 0);
    $data['articles'] = $this->db->limit($config['per_page'], $offset)->get('articles')->result();

    // 5. 传递分页链接到视图
    $data['page_links'] = $this->pagination->create_links();

    // 加载视图
    $this->load->view('article_list', $data);
}

视图里的输出:

<div class="article-list">
    <!-- 这里渲染你的列表数据 -->
    <?php foreach($articles as $item): ?>
        <div class="article-item"><?php echo $item->title; ?></div>
    <?php endforeach; ?>
</div>
<!-- 分页链接 -->
<div class="pagination-container">
    <?php echo $page_links; ?>
</div>

内容的提问来源于stack exchange,提问作者user9535105

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:52:01