Php 如何在Codeigniter中加载用于分页的外部配置文件
我已经阅读了Php 如何在Codeigniter中加载用于分页的外部配置文件,php,codeigniter,pagination,Php,Codeigniter,Pagination,我已经阅读了Codeigniter的文档,我希望有一个用于分页的外部配置文件,因此我做了以下工作: 我将我的$config数组放入config/pagination.php中,然后在每个需要使用配置文件进行分页的控制器上,我将使用: $this->load->library('pagination'); $config['base_url'] = $base_url; $config['total_rows'] = $total_rows; $config['per_page'] =
Codeigniter
的文档,我希望有一个用于分页的外部配置文件,因此我做了以下工作:
我将我的$config
数组放入config/pagination.php
中,然后在每个需要使用配置文件进行分页的控制器上,我将使用:
$this->load->library('pagination');
$config['base_url'] = $base_url;
$config['total_rows'] = $total_rows;
$config['per_page'] = $per_page;
$pag_links = $this->pagination->create_links();
我以为就这些了。问题是它不起作用。我在网站上搜索了一下,发现这两个问题已经得到了回答:和
他们都建议采用以下代码:
$this->pagination->initialize($config);
但是Codeigniter的文件说:
在配置文件中设置首选项
如果不想使用上述方法设置首选项,可以
而是将它们放入一个配置文件中。只需创建一个名为
php,在该文件中添加$config数组。然后保存文件
在application/config/pagination.php中,它将被使用
自动地您将不需要使用
$this->pagination->initialize()如果将首选项保存在
配置文件
重要的一点是,如果将首选项保存在配置文件中,则不需要使用$this->pagination->initialize()
当然,如果我把那行代码放在我自己的代码中,它就会工作
$this->load->library('pagination');
$config['base_url'] = $base_url;
$config['total_rows'] = $total_rows;
$config['per_page'] = $per_page;
$pagination->initialize($config);
$pag_links = $this->pagination->create_links();
我是不是错过了什么重要的东西为Codeigniter的分页创建外部配置文件的正确方法是什么?您的配置数组应存储在application/config/pagination.php中 然后,您无需添加:
$this->load->library('pagination');
$config['base_url'] = $base_url;
$config['total_rows'] = $total_rows;
$config['per_page'] = $per_page;
在控制器中,仅调用库
$this->load->library('pagination');
因为你创建的配置中有这些。。。
如果您使用配置文件中的变量$total_rows等自动加载,我唯一能想到的是,这些变量不会引用外部文件中的任何内容。。。您需要直接指定值,例如:
$config['total_rows'] = 200;
但是,如果需要在控制器内指定这些值,则需要使用您所说的方式并使用
$pagination->initialize($config);
在控制器中