网上关于 PHP 缓存类的资料很多,不过这个类应该是我见过功能满足需求,但又无比简洁的一个。废话不多说,直接看代码吧!
使用说明:
1、实例化
$cache = new Cache();
2、设置缓存时间和缓存目录
$cache = new Cache(60, '/any_other_path/');
第一个参数是缓存秒数,第二个参数是缓存路径,根据需要配置。
默认情况下,缓存时间是 3600 秒,缓存目录是 cache/
3、读取缓存
$value = $cache->get('data_key');
4、写入缓存
$value = $cache->put('data_key', 'data_value');
完整实例:
$cache = new Cache(); //从缓存从读取键值 $key 的数据 $values = $cache->get($key); //如果没有缓存数据 if ($values == false) { //insert code here... //写入键值 $key 的数据 $cache->put($key, $values); } else { //insert code here... }
Cache.class.php
<?php class Cache { private $cache_path;//path for the cache private $cache_expire;//seconds that the cache expires //cache constructor, optional expiring time and cache path public function Cache($exp_time=html" target="_blank">3600,$path="cache/"){ $this->cache_expire=$exp_time; $this->cache_path=$path; } //returns the filename for the cache private function fileName($key){ return $this->cache_path.md5($key); } //creates new cache files with the given data, $key== name of the cache, data the info/values to store public function put($key, $data){ $values = serialize($data); $filename = $this->fileName($key); $file = fopen($filename, 'w'); if ($file){//able to create the file fwrite($file, $values); fclose($file); } else return false; } //returns cache for the given key public function get($key){ $filename = $this->fileName($key); if (!file_exists($filename) || !is_readable($filename)){//can't read the cache return false; } if ( time() < (filemtime($filename) + $this->cache_expire) ) {//cache for the key not expired $file = fopen($filename, "r");// read data file if ($file){//able to open the file $data = fread($file, filesize($filename)); fclose($file); return unserialize($data);//return the values } else return false; } else return false;//was expired you need to create new } } ?>
相信大家一定会喜欢这个简洁的php缓存类代码,希望对大家的学习有所帮助。
本文向大家介绍简单实用的网站PHP缓存类实例,包括了简单实用的网站PHP缓存类实例的使用技巧和注意事项,需要的朋友参考一下 缓存技术在实际使用当中应用非常广泛,可以有效减轻对服务器数据库的访问压力,提高运行速度。目前很多CMS内容管理系统中频繁使用缓存机制来提高系统运行的效率。本文以一个简单实用的缓存类为例,帮助大家参考下缓存的机制与写法。 缓存文件cache.php代码如下: 缓存类的使用:
本文向大家介绍winform简单缓存类实例,包括了winform简单缓存类实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了winform简单缓存类。分享给大家供大家参考。具体如下: 希望本文所述对大家的C#程序设计有所帮助。
本文向大家介绍PHP分页初探 一个最简单的PHP分页代码的简单实现,包括了PHP分页初探 一个最简单的PHP分页代码的简单实现的使用技巧和注意事项,需要的朋友参考一下 PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项。 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7。PHP分页代码核心就是围绕这条语句展开的,SQL
本文向大家介绍PHP中opcode缓存简单用法分析,包括了PHP中opcode缓存简单用法分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP中opcode缓存简单用法。分享给大家供大家参考,具体如下: 1.什么是opcode 解释器分析代码之后,生成可以直接运行的中间代码,就称做操作码,opcode 2.解释器与编译器的区别 解释器是生成了中间代码后直接运行中间代码,运行时的控制权
问题内容: 我正在寻找一个简单的Java内存缓存,该内存具有良好的并发性(因此LinkedHashMap不够好),并且可以定期序列化到磁盘。 我需要但很难找到的一个功能是一种“窥视”对象的方法。我的意思是从缓存中检索对象,而不会导致缓存对对象的保留时间超过其应有的保留时间。 更新: 我忽略提到的另一个要求是,我需要能够就地修改缓存的对象(它们包含浮点数组)。 谁能提供任何建议? 问题答案: 自从最
本文向大家介绍简单的pgsql pdo php操作类实现代码,包括了简单的pgsql pdo php操作类实现代码的使用技巧和注意事项,需要的朋友参考一下 核心代码: