Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在Codeigniter中加载用于分页的外部配置文件_Php_Codeigniter_Pagination - Fatal编程技术网

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);
在控制器中