使用配置类定义Codeigniter全局变量
CodeIgniter中公共函数不能追加,可以通过 helper 辅助函数实现。
创建 common_helper.php 文件,定义所需公共函数,存放至 application/helpers 目录中。
在 application/config/autoload.php 中配置 $autoload['helper'] = array('common'); 即可。
全局的变量也可以借助 helper 函数来实现。不过,更为合适的方式可能要属用配置类定义了。
CodeIgniter 默认有一个主配置文件,位于application/config/config.php 路径,其中定义了一堆框架级别的全局配置,一个名称为$config 的数组。
如果需要添加全局配置项,可以在这个文件中实现,考虑到自定义配置和框架配置的分离,建议新建一个文件 vars.php,然后做如下定义:
/**
* 工作目录配置
*/
$config['src']['cache'] = FCPATH . '../src/cache';
$config['src']['modules'] = FCPATH . '../src/modules';
$config['src']['www'] = FCPATH . '../src/www';
使用时,通过以下代码在控制器中读取:
$src = $this->config->item('src');
$cache = $src['cache']
或者:
$src = $this->config->item('cache', 'src');
当然,你需要在 application/config/autoload.php 中自动加载这个配置文件。
相关推荐
-
codeigniter中测试通过的分页类示例
通用分页类(以Codeigniter测试) page_list.php 复制代码 代码如下: <?php if( ! defined('BASEPATH')) die('No Access'); /** * 分页类 */class Page_list { /** * 总数据 * @var int */ private $total; /** * 每页显示数据 * @var int */ private $size; /**
-
CodeIgniter分页类pagination使用方法示例
本文实例讲述了CodeIgniter分页类pagination使用方法.分享给大家供大家参考,具体如下: controller控制器(application/controller/page.php文件): public function index() { $this->load->model ( 'home_model' , '' , TRUE); $config= array(); $config['per_page'] = $this->per_page; //每页显示的数据数 $
-
codeigniter实现get分页的方法
本文实例讲述了codeigniter实现get分页的方法.分享给大家供大家参考.具体实现方法如下: public function project_search(){ $this->load->library('pagination'); $this->load->model('depart_mdl'); //获取搜索需要的信息 $data = $this->get_project_data(); $get_data = $this->input->get();
-
CodeIgniter辅助之第三方类库third_party用法分析
本文实例分析了CodeIgniter辅助之第三方类库third_party用法.分享给大家供大家参考,具体如下: third_party用来存放系统中引入的第三方类库,类库通常提供的功能比较丰富,相应的学习成本也要高些,系统中能用到功能有限,所以建议在引入类库时进行适当的封装,让系统中更方便使用,其他人使用时只需关注扩展的方法而无法关注具体的实现.以CI集成Twig模版为例吧. 首先需要下载Twig类库,并放在third_party中,然后在libraries中进行一次封装,示例如下: <?ph
-
Codeigniter购物车类不能添加中文的解决方法
本文实例讲述了Codeigniter购物车类不能添加中文的解决方法.分享给大家供大家参考.具体分析如下: 有朋友可能会发现Codeigniter 购物车类不能添加中文,我找了N久才发现下面一段代码限制了输入中文了,修改systemlibrariesCart.php,注释第186-190行产品名称的判断,代码如下: 复制代码 代码如下: if ( ! preg_match("/^[".$this->product_name_rules."]+$/i", $ite
-
codeigniter自带数据库类使用方法说明
初始化数据库类 依据你的数据库配置载入并初始化数据库类: 复制代码 代码如下: this->load->database(); 被载入之后你可以在任何地方使用它. 以对象形式返回查询结果 复制代码 代码如下: $query = $this->db->query('SELECT name, title, email FROM my_table'); foreach ($query->result() as $row){ echo $row->title; ec
-
CodeIgniter扩展核心类实例详解
本文实例讲述了CodeIgniter扩展核心类的方法.分享给大家供大家参考,具体如下: CI中对核心类.辅助类和函数的扩展是相当方便的,配置文件中指定了subclass_prefix扩展前缀,默认为MY_,扩展时需要以该配置为前缀,下面整理下扩展方式. 1.扩展核心类 核心类位于system/core下,其中大部分类会在初始化的时候自动加载.扩展核心类的方式有两种:替换核心类和继承核心类. 替换核心类 当application/core目录下存在与system/core同名的文件时会自动替换掉核
-
Codeigniter框架实现获取分页数据和总条数的方法
本文实例讲述了Codeigniter框架实现获取分页数据和总条数的方法.分享给大家供大家参考.具体实现方法如下: 一般在数据分页的时候需要获取当前页的数据和总条数,一般人是在model中封装两个函数分别获取当前页的数据和数据总条数,业务逻辑类似,感觉有点冗余,可以封装在一起 复制代码 代码如下: /** * 获取分页数据及总条数 * @param string @tablename 表名 * @param mixed $where 条件 * @param int $limit 每页条数 * @p
-
CI分页类首页、尾页不显示的解决方法
本文实例讲述了CI分页类首页.尾页不显示的解决方法.分享给大家供大家参考,具体如下: 看了下手册说,每次都要重新去写一次呢些$config,可以新建一个文件放到config文件夹下面,考虑了下,config这个文件夹系统会自动加载,也就是说不管你访问什么页面这文件夹里面的所有信息都会被加载,所以,要想在这个文件里面去写就需要写方法,这样即使加载如果不去加载也是没有关系的.本人没有沿用手册上的说法做. 我的思路:既然我们是在CI这框架下写的东西,而且每个控制器都会引入父类CI_Controller
-
php实现仿写CodeIgniter的购物车类
本文实例讲述了php实现仿写CodeIgniter的购物车类.分享给大家供大家参考.具体如下: 这里仿写CodeIgniter的购物车类 购物车基本功能: 1) 将物品加入购物车 2) 从购物车中删除物品 3) 更新购物车物品信息 [+1/-1] 4) 对购物车物品进行统计 1. 总项目 2. 总数量 3. 总金额 5) 对购物单项物品的数量及金额进行统计 6) 清空购物车 cart.php文件如下: <?php /** * * @author quanshuidingda
-
使用CodeIgniter的类库做图片上传
CodeIgniter的文件上传类允许文件被上传.您可以设置指定上传某类型的文件及指定大小的文件. 上传文件普遍的过程: 一个上传文件用的表单,允许用户选择一个文件并上传它.当这个表单被提交,该文件被上传到指定的目录.同时,该文件将被验证是否符合您设定的要求.一旦文件上传成功,还要返回一个上传成功的确认窗口. 下面是表单: 复制代码 代码如下: <form method="post" action="<?=base_url()?>admin/img_uplo
-
Codeigniter(CI)框架分页函数及相关知识
一般在数据分页的时候需要获取当前页的数据和总条数,一般人是在model中封装两个函数分别获取当前页的数据和数据总条数,业务逻辑类似,感觉有点冗余,可以封装在一起: 复制代码 代码如下: /** * 获取分页数据及总条数 * @param string @tablename 表名 * @param mixed $where 条件 * @param int $limit 每页条数 * @param int $offset 当前页 */
-
CodeIgniter图像处理类的深入解析
image.php 复制代码 代码如下: <?phpclass Image extends Controller { function Image() { parent::Controller(); $this->load->library('image_lib'); } //缩略图 function index(){ echo '* 调整图像大小 <br> * 创建缩略图 <br>
随机推荐
- 全面解析Ajax和jsonp使用总结
- ajax局部刷新一个div下jsp内容的方法
- 如何处理包含javascript语句时的间隔符?
- 利用nginx解决跨域问题的方法(以flask为例)
- Js实现中国公民身份证号码有效性验证实例代码
- document.designMode的功能与使用方法介绍
- WAC启动Android模拟器 transfer error: Read-only file system错误解决方法
- php 保留字列表
- c语言二进制数按位输出示例
- JavaScript 接收键盘指令示例
- Python入门教程之运算符与控制流
- 微信小程序开发animation心跳动画效果
- jquery 操作iframe的几种方法总结
- 40个有创意的jQuery图片、内容滑动及弹出插件收藏集之一
- java拼接字符串时去掉最后一个多余逗号的方法
- Android使用Dialog风格弹出框的Activity
- python处理cookie详解
- Javascript控制页面链接在新窗口打开具体方法
- navicatdesignquery.sql.bak系统找不到指定路径错误的解决方法
- Android 开机直接运行app并当做手机桌面的实例