ThinkPHP - 缓存使用
用法:
需要使用不同的缓存方式的时候 需要重新初始化,如果不初始化直接调用的话,则会按照系统配置自动初始化。
初始化的返回值,可以直接操作缓存:
- $cache = cache(array('type'=>'xcache','expire'=>60));
- $cache->set('name',$value);
- $cache->get('name');
- $cache->rm('name');
或者
- $cache = cache(array('type'=>'xcache','expire'=>60));
- $cache->name = $value;
- echo $cache->name;
- unset($cache->name);
实例代码:
Public function index() {
//初始化缓存
$cache = cache(array('expire'=>10));
//判断缓存是否存在
if ( !$list = $cache->get('cate_list') ) {
//获取所有父类分类
$FaCate = M('Cate')->where(array('pid'=>0))->order('sort')->select();
//获取所有分类
$allCate = M('Cate')->order('sort')->select();
// 引入分类类文件
import('Class.Category', APP_PATH);
$db = M('Blog');
$field = array('id', 'title', 'time');//取出的字段
foreach ($FaCate as $key => $value) {
//根据父类id,获取子类id
$cids = Category::getChildsId($allCate, $value['id']);
//连同父类id一起放入数组,输出的结果是,父类id以及其下的所有子类id
$cids[] = $value['id'];
//根据查询出的id,查找博文表blog,获取博文数据,将博文数据放入Facate数组中的blog子数组中。
$whe = array('cid'=>array('IN', $cids));//博文表中的查询条件,cid IN ('', '', '')
//将查询除的数据放入blog数组中
$FaCate[$key]['blog'] = $db->field($field)->where($whe)->select();//不能进行排序
}
//加载数据后,将数据放入缓存
$cache->set('cate_list', $FaCate);
}
//获取缓存数据,并注入页面
$this->cate = $cache->get('cate_list');
$this->display();
}
ThinkPHP - 缓存使用的更多相关文章
- ThinkPHP 缓存技术详解 使用大S方法
如果没有缓存的网站是百万级或者千万级的访问量,会给数据库或者服务器造成很大的压力,通过缓存,大幅减少服务器和数据库的负荷,假如我们把读取数据的过程分为三个层,第一个是访问层,第一个是缓存层,第三个是数 ...
- thinkphp缓存使用
thinkphp缓存使用 一.总结 1.这里的缓存不是指的缓存的页面,而是cache,如果你缓存了一个数组,那么你就可以取出这个数组里面的数据进行使用,用法性质和cookie和session有点像 2 ...
- thinkphp 缓存数据
thinkphp 中内置了缓存操作 3.1版本的数据缓存方法是cache 基本用法: S(array('type'=>'xcache','expire'=>60)); 缓存初始化 缓存初始 ...
- 修改ThinkPHP缓存为Memcache的方法
一般来说,ThinkPHP的默认缓存方式是以File文件方式实现的,运行时会在/Runtime/Temp 下生成很多的缓存文件. 有的情况下服务器装了memcached之后,需要将ThinkPHP的缓 ...
- thinkphp缓存
最简答的缓存 // 缓存设置 public function ff(){ S('); } // 缓存读取 public function aa(){ $value = S('name'); echo ...
- ThinkPHP缓存微信公众号access_token
access_token作为微信的全局票据,在高级接口中需要频繁调用,其有效期为7200秒,即2小时,而微信官方对调用Token的次数有限制(参见接口频率限制说明),获取access_token每日限 ...
- Thinkphp 缓存微信jssdk相关认证参数
public function getapiSignature() { $access_token=S('access_token'); //先查询缓存中是否存在 if($access_toke ...
- Thinkphp 缓存和静态缓存局部缓存设置
1.S方法缓存设置 if(!$rows = S('indexBlog')){ //*$rows = S('indexBlog') $rows = D('blog')->select(); S(' ...
- thinkphp 缓存驱动
缓存驱动默认位于Think\Cache\Driver命名空间下面,目前已经提供了包括APC.Db.Memcache.Shmop.Sqlite.Redis.Eaccelerator和Xcache缓存方式 ...
随机推荐
- hibernate -inverse
one to many inverse=false只能设置维护关联关系的多的一方, inverse属性: 默认为false,表示本方维护关联关系. 如果为true,表示本方不维护关联关系(并不意味着对 ...
- 不直接用NSLog
公司中不直接使用NSLog,而是利用宏定义自己的打印函数,将该打印函数写在项目的.pch文件中.调试的时候往往用到好多打印,但发布的时候确不需要.(一下是在公司中的一些处理) 自定义NSLog 一,固 ...
- 循环获取<ul>下拉列表的的值。进行对比,正确的家样式
$(function () { //要对比的值 var mysqlanswer = $("#wds-mysqlcuranswer").val(); // topic-opt ...
- 关于CDH5.2+ 添加hive自定义UDAF函数的方法
- Java format 简单应用
一.前言 String.format 作为文本处理工具,为我们提供强大而丰富的字符串格式化功能,为了不止步于简单调用 String.format("Hello %s", " ...
- C#中小函数的应用
今天看到的一段函数 StringBuilder sb = new StringBuilder("sselect * from table where 1=1"); if(TextB ...
- First AngularJS !
My first angular! <html ng-app> <head> <meta charset="utf-8"> <script ...
- angularjs学习总结(快速预览版)
对html标签的增强 -> 指令 指令的本质是什么 声明的方式调用相应的脚本,实现一些操作,声明的所在的dom就是脚本的执行上下文? 自定义标签 -- 标签指令自定义属性 -- 属性指令特定格式 ...
- C#使用WinAPI 修改电源设置,临时禁止笔记本合上盖子时睡眠
原文 http://www.cnblogs.com/h46incon/archive/2013/09/03/3299138.html 在 阻止系统自动睡眠的小软件,附C#制作过程 ,弄了一个防止系统睡 ...
- viewpager的layout_width="wrap_content"无效问题
在viewpager当中直接使用layout_width="wrap_content"是无效的,扩展了一下.解决这个问题. package com.soulagou.ui; imp ...