基于 CI 1.7.x 的 项目使用新版本CI的文件缓存类库
维护的项目使用的是 codeigniter 1.7.x版本,但是我想使用文件缓存,但是旧版本是没有缓存类库的,并且autoload.php没有drivers这个配置项。
我复制的是 Codeigniter 3.1.10的缓存类
创建文件缓存类库文件
方法一:
前提: 本地已有下载好或者有使用 Codeigniter 3.x的项目
将Codeigniter 3.1.10中 system/libraries/Cache/drivers/Cache_file复制到旧项目的systen/libraries文件夹中
方法二:
前提: 可以访问到 github上的CodeIgniter,路径是system/libraries/Cache/drivers/Cache_file.php
在旧项目的systen/libraries文件夹中创建名为Cache_file.php文件,将Cache_file.php raw的内容复制到刚才创建的 Cache_file.php中
配置
在 config.php文件中默认添加 $config['cache_path']= '';,空值默认是APPPATH.'cache/'
未添加缓存路径配置或者没有修改缓存路径配置的情况下,需要在 systen/application 文件夹下文件一个名为cache的文件夹(默认存放文件cache的路径)并分配 写权限
使用
在 config/autoload.php的libraries添加cache_file值
如:
$autoload['libraries'] = array('database','cache_file');
使用
//如果没有在`autoload.php`配置自动加载,需手动加载
// $this->load->liabrary('cache_file');
$this->cache_file->set('test','test_cache');
$data = $this->cache_file->get('test');
具体使用方法可参考缓存驱动器
使用的区别是
//Codeigniter 3.x使用文件缓存
$this->cache->file->set('test','test_cache');
$data = $this->cache->file->get('test');
//旧Codeigniter版本使用文件缓存
$this->cache_file->set('test','test_cache');
$data = $this->cache_file->get('test');
本来想找其它 php的缓存类库,放入到旧Codeigniter项目中的,但是想想 Codenigter 新版本中就有缓存类,尝试放入到 旧CI版本的类库文件夹中使用,尝试成功,故记录过程方便以后查看。
基于 CI 1.7.x 的 项目使用新版本CI的文件缓存类库的更多相关文章
- 基于 KubeSphere CI/CD 将 Spring Boot 项目发布至 Kubernetes
本示例基于开源的 KubeSphere 容器平台 演示如何通过 GitHub 仓库中的 Jenkinsfile 来创建流水线,流水线共包括 8 个阶段,最终将一个 Hello World 页面部署到 ...
- 基于Drone+Gogs流水线-全面认识轻量级云原生CI引擎Drone
1. 介绍 Drone by Harness 是一个基于Docker容器技术的可扩展的持续集成引擎,用于自动化测试.构建.发布.每个构建都在一个临时的Docker容器中执行,使开发人员能够完全控制其构 ...
- 利用Travis CI 让你的github项目持续构建
Travis CI 是目前新兴的开源持续集成构建项目,它与jenkins,GO的很明显的特别在于采用yaml格式,简洁清新独树一帜.目前大多数的github项目都已经移入到Travis CI的构建队列 ...
- 基于MySQL协议的数据库中间层项目Atlas - 360团队
一.简介 Atlas是由 Qihoo 360公司Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目.它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了 ...
- 2014年基于Raspberry Pi的5大项目
2014年基于Raspberry Pi的5大项目 Raspberry Pi(即树莓派)是一款基于Linux系统(Debian.ArchLinux)的单板机计算机,它只有一张信用卡大小,可用于电子表 ...
- 使用 flow.ci 快速发布你的项目文档
软件研发的协作过程中,文档是必不可少的一环,有需求文档.接口文档.使用文档等等.当开始写文档时,首先会遇到两个问题: team members 之间如何协作? 文档 OK 后如何分发,去哪里看?如何更 ...
- iKcamp团队制作|基于Koa2搭建Node.js实战项目教学(含视频)☞ 环境准备
安装搭建项目的开发环境 视频地址:https://www.cctalk.com/v/15114357764004 文章 Koa 起手 - 环境准备 由于 koa2 已经开始使用 async/await ...
- 基于stm32的水质监测系统项目基础部分详细记录
基于stm32的水质监测系统项目基础部分详细记录 软件环境:MDK5 硬件环境:STM32F103ZET6 开发板.颜色传感器.串口屏.串口打印机 搭建工程模板 在进行项目软件的撰写时,首先新建一个基 ...
- 基于.NET Core 框架搭建WebApi项目
一 什么是.NET Core? 随着2014年 Xamarin和微软发起.NET基金会,微软在2014年11月份开放.NET框架源代码.在.NET开源基金会的统一规划下诞生了.NET Core .也就 ...
随机推荐
- mybatis中的命名空间(namespace)的作用
mybatis中为每一个映射文件添加一个namespace,这样不同的映射文件中sql语句的id相同也不会有冲突,只要定义在映射文件中的sql语句在该映射文件中id唯一就可以
- nginx + gunicorn + django 2.0 踩坑
部署踩坑 部署踩坑提前准备服务器端准备安装nginx使用uwsgi部署使用gunicorn配置配置nginx配置django中的路径url 提前准备 在本地能够 python(3) manage.py ...
- Web开发进阶
1.可靠性 可扩展性,服务降级,负载均衡 应用扩展 1.垂直扩展,方式:提升机器硬件,缺点,成本昂贵,扩展能力有限 2.水平扩展,方式:增加节点,优点:升级过程平花,硬件成本低,理论上无线扩展,确 ...
- JAVA基础学习-多态 对象转型 final
一.多态的产生条件 1:继承 存在继承的类之间 2:方法重装 3:父类继承子类重装的方法 子类的对象 也是属于父类的 二:对象的转型 1:向上转型:当子类转型成父类时 例如:Animal a = n ...
- new Date() vs Calendar.getInstance().getTime()
System.currentTimeMillis() vs. new Date() vs. Calendar.getInstance().getTime() System.currentTimeMil ...
- 前端学习(二十)jquery属性(笔记)
jq里面操作属性的方法: 设置属性: 设置一个: $(this).attr('src','img/pic2.jpg'); 设置一组: ...
- 面试之加分项vue(没看懂,。。。。)
对大部分人来说,掌握Vue.js基本的几个API后就已经能够正常地开发前端网站.但如果你想更加高效地使用Vue来开发,成为Vue.js大师,那下面我要传授的这五招你一定得认真学习一下了.在面试过程很多 ...
- spark代码写入hdfs错误
报错: org.apache.hadoop.security.AccessControlException: Permission denied: user=hgm, access=WRITE 其实就 ...
- 【JavaWeb项目】一个众筹网站的开发(八)后台页面详细设置
一.user.jsp改造 删除引入菜单 抽取导航栏 nav-bar.jsp,删除引入导航栏 删除引入main.jsp的到好烂 数据库里添加url 报错,url不对 没有/ url正确 action=& ...
- vscode开发vue项目保存时自动执行lint进行修复
vscode下载eslint插件 vscode进行设置 找到settings.json 在里面写入如下内容进行保存 { "eslint.autoFixOnSave": tr ...