【发布时间】:2015-10-02 16:06:46
【问题描述】:
我需要为我的 Codeigniter 3 应用程序创建自定义库,这些库具有我所有自定义库都使用的通用功能。
如何只在一处使用功能?
【问题讨论】:
-
一个小建议,使用 helper,而不是 library 用于这些目的。
标签: php codeigniter dry codeigniter-3
我需要为我的 Codeigniter 3 应用程序创建自定义库,这些库具有我所有自定义库都使用的通用功能。
如何只在一处使用功能?
【问题讨论】:
标签: php codeigniter dry codeigniter-3
您似乎需要的是帮助文件,而不是库。 在 application/helpers 目录下创建一个文件
例如文件:mycommon_helper.php 内容为:
<?php if(!defined('BASEPATH')) exit('No direct script access allowed');
function my_function($param1) {
printf('Hello %s', $param1);
}
将其包含在自动加载文件中,如下所示
$autoload['helper'] = array('url','html', .....'mycommon'); // Note _helper is omitted
在此之后,您可以在代码中的任何位置使用 my_function($param1)
$sayIt = my_function('user2473015');
【讨论】:
您可以创建新的自定义库。 您创建的库类应该放在您的 application/libraries 文件夹中。
类应该有这样的基本原型(这里以名称 Myclass 为例):
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Myclass {
public function my_function()
{
}
}
/* End of file Myclass.php */
您可以在任何控制器函数中使用标准初始化您的类:
$this->load->library('myclass');
$this->myclass->my_function(); // 对象实例总是小写
【讨论】: