ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
程序员文章站
2022-04-09 12:41:05
本文实例讲述了thinkphp3.2.3框架memcache缓存使用方法。分享给大家供大家参考,具体如下:
前面一篇文章讲述了linux下安装memcached服务器和客...
本文实例讲述了thinkphp3.2.3框架memcache缓存使用方法。分享给大家供大家参考,具体如下:
前面一篇文章讲述了linux下安装memcached服务器和客户端,这里来总结一下thinkphp3.2.3框架memcache的使用方法。
方法一:原生memcache的写法
public function test1() { $mc = new \memcache(); //创建memcache对象 $mc->connect("127.0.0.1", 11211); //连接memcached服务器 $mc->set('test1','hello world',0,10); //存储数据 echo $mc->get('test'); //获取数据 $mc->delete('test'); //删除数据 $mc->flush(); //强制刷新全部缓存,即清空memcached服务器 $mc->close(); //断开与memcached服务器的连接 }
方法二:直接调用集成好的memcache缓存驱动
public function test2() { $mc = new \think\cache\driver\memcache(); //实例化memcache驱动 $mc->set('test2','hello world',60); //写入缓存 echo $mc->get('test2'); //读取缓存 $mc->rm('test2'); //删除指定缓存 $mc->clear(); //清空全部缓存 }
方法三:s方法
①直接调用s方法
public function test3() { //缓存初始化 s(array( 'type'=>'memcache', //缓存类型 'host'=>'127.0.0.1', //memcache服务器地址 'port'=>'11211', //memcache端口号 'prefix'=>'think', //缓存标识前缀 'expire'=>10,) //缓存有效期(时间为秒) ); //设置缓存 s('test3','hello world'); //可以改变缓存时间:s('test3','hello world',60); //读取缓存 echo s('test3'); //删除缓存 s('test3',null); }
②采用对象方式操作缓存
public function test4() { $cache = s(array('type'=>'memcache','prefix'=>'think','expire'=>10)); //缓存初始化 $cache->test4 = 'hello world'; //设置缓存 echo $cache->test4; //获取缓存 unset($cache->test4); //删除缓存 }
手册中关于s方法初始化:如果不传入type参数,会读取配置文件中设置的data_cache_type作为默认缓存类型;如果不传入prefix参数,会读取data_cache_prefix作为默认缓存标识前缀;如果不传入expire参数,会读取data_cache_time作为默认缓存有效期。
配置文件config.php中,关于memcache缓存配置如下:
'data_cache_type' => 'memcache', //数据缓存类型 'data_cache_prefix' => '', //缓存前缀 'data_cache_time' => 10, //数据缓存有效期 0表示永久缓存 'data_cache_compress' => false, //数据缓存是否压缩缓存
配置之后调用s方法无需再初始化
public function test5() { //设置缓存 s('test5','hello world'); //读取缓存 echo s('test5'); //删除缓存 s('test5',null); }
更多关于thinkphp相关内容感兴趣的读者可查看本站专题:《thinkphp入门教程》、《thinkphp模板操作技巧总结》、《thinkphp常用方法总结》、《codeigniter入门教程》、《ci(codeigniter)框架进阶教程》、《zend framework框架入门教程》及《php模板技术总结》。
希望本文所述对大家基于thinkphp框架的php程序设计有所帮助。