<?php return array( 'DB_TYPE'=>'mysql', 'DB_HOST'=>'127.0.0.1', 'DB_NAME'=>'w3note', 'DB_USER'=>'root', 'DB_PWD'=>'123456', 'DB_PORT'=>'3306', 'DB_PREFIX'=>'w3_', 'DATA_CACHE_TYPE'=>'file',//设置缓存方式为file 'DATA_CACHE_TIME'=>'600',//缓存周期600秒 ); ?>
在thinkphp中,我喜欢使用快捷缓存函数S()进行缓存,其用法如下:
S('data',$Data);//使用data标识缓存$Data数据 S('data',$Data,600);// 缓存$Data数据600秒 $Data = S('data');// 获取缓存数据 S('data',NULL);// 删除缓存数据
<?php // 本类由系统自动生成,仅供测试用途 class IndexAction extends Action{ public function index(){ //如果有缓存,则读取缓存数据 //如果没有缓存,则读取数据库当中的数据放入缓存 $lists=S('lists'); if(emptyempty($lists)){ $news=M('news'); $lists=$news->select(); S('lists',$lists,600); echo '这是直接读取数据库的数据'; } dump($list); ?>
array(10) { [0] => array(12) { ["id"] => string(1) "1" ["catid"] => string(2) "13" ["title"] => string(4) "thinkphp的缓存技术" ["content"] => string(8) "thinkphp的缓存技术" ["tags"] => string(4) "缓存" ["thumb"] => string(0) "" ["description"] => string(7) "thinkphp的缓存技术" ["inputtime"] => string(10) "1348370202" ["posid"] => string(1) "1" ["ord"] => string(1) "2" ["hits"] => string(1) "1" ["status"] => string(1) "1" }
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。