公司手机触屏站 ,由于页面图片太多,所以需要做数据缓存,就随便写一个数据缓存类。

直接贴代码

<?php
/**
*
* fianl_m@foxmail.com
* 缓存类
* 把数据查询出,并序列化写入文件
**/
class Cache{

function __construct($config){
//定义是否开启缓存
$this->is_cache=$config['is_cache'];
//定义缓存目录
$this->cache_file=$config['cache_file'];
//定义缓存时间
$this->cache_time=$config['cache_time'];

}

//读取缓存文件
public function open($name){

$arr=array();
$filename=$this->cache_file.$name;
$status=filemtime($filename)+$this->cache_time>time();//定义缓存时间
if( file_exists($filename) && $status && $this->is_cache){
$content=file_get_contents($filename);//读取缓存文件
$arr=unserialize($content);
return $arr;
}else{
return false;
}

}
//写入缓存文件
public function write($name,$data=array()){
$filename=$this->cache_file.$name;
$content=serialize($data);
file_put_contents($filename, $content);//写入缓存文件

}

}

?>

其实无非就是,把select的数组  然后序列化 放进文本中 然后读出来。

使用方法

//定义缓存是否开启
require('cache.class.php');
$config=array(
'is_cache'=>1,//是否开启缓存
'cache_file'=>'./cache/',//缓存文件夹
'cache_time'=>'60',//缓存时间
);
$cache=new Cache($config);

//打开缓存,传入缓存文件名字

$row=$cache->open($filename);

//写入缓存传入文件名字  和数据(数组)

$cache->write($filename,$data);

ps:有不懂的 可以给我留言  非囍勿喷,大神绕过,菜鸟学习!

php简单数据缓存类的更多相关文章

  1. php cache类代码(php数据缓存类)

    如果访问量大的话会给数据库造成很大的负担,所以对于变化不经常的内容要做好php 数据cache(缓存)是十分必要的,我做了一个简单的php“文件缓存”的类,希望对大家有所帮助. 思路是这样的: 对于一 ...

  2. 简单数据访问类,生成简单SQL,自动转换成java对象

    import java.util.HashMap; import java.util.List; import java.util.Map; import org.slf4j.Logger; impo ...

  3. iOS缓存类的设计

    使用执行速度缓存的程序可以大大提高程序,设计一个简单的缓存类并不需要太复杂的逻辑. 只需要一个简单的3接口. 存款对象 以一个对象 删除对象 阅读对象 watermark/2/text/aHR0cDo ...

  4. uni-app,vue,react,Trao之缓存类封装

    uni-app,vue,react,Trao之缓存类封装 一,介绍与需求 1.1,介绍 缓存主要分为如下几个 1.LocalStorage LocalStorage是永久性的本地缓存,存储在客户端的浏 ...

  5. php简单缓存类

    <?phpclass Cache {    private $cache_path;//path for the cache    private $cache_expire;//seconds ...

  6. 【转】Unity3D 场景切换与持久化简单数据储存(PlayerPrefs类)

    本篇文章主要介绍了"Unity3D 场景切换与持久化简单数据储存(PlayerPrefs类)",主要涉及到Unity3D 场景切换与持久化简单数据储存(PlayerPrefs类)方 ...

  7. 【转】一个小工具类,利用shareObject把数据缓存

    原文链接:http://bbs.9ria.com/thread-284082-1-2.html 之前做一个数据缓存,就顺便把写入缓存,清除缓存,获取缓存都整理了一下,其中也做了些参考,个人水平有限,有 ...

  8. ASP.NET Core 折腾笔记二:自己写个完整的Cache缓存类来支持.NET Core

    背景: 1:.NET Core 已经没System.Web,也木有了HttpRuntime.Cache,因此,该空间下Cache也木有了. 2:.NET Core 有新的Memory Cache提供, ...

  9. jQuery 2.0.3 源码分析 数据缓存

    历史背景: jQuery从1.2.3版本引入数据缓存系统,主要的原因就是早期的事件系统 Dean Edwards 的 ddEvent.js代码 带来的问题: 没有一个系统的缓存机制,它把事件的回调都放 ...

随机推荐

  1. Mschart绘制图表之X轴为时间的设置方式

    最近使用C#开发图表,比较了DirectorChart,DontNetCharting,TeeChart,最终选用微软的mschart开发,对于X轴作为时间轴探索了好久,终于实现了想要的效果. 界面效 ...

  2. root cause:org.apache.struts2.json.JSONException: java.lang.reflect.InvocationTargetException

    今天在调试SSH与Ajax时,服务器端报出JSON异常:

  3. spring与hibernate整合事务管理的理解

    在谈Spring事务管理之前我们想一下在我们不用Spring的时候,在Hibernate中我们是怎么进行数据操作的.在Hibernate中我们每次进行一个操作的的时候我们都是要先开启事务,然后进行数据 ...

  4. Editplus配置java运行环境

    Editplus配置java运行环境 下载及安装: editplus官网下载地址:https://www.editplus.com/ 安装方法和安装普通exe应用程序一样,选在安装路径,下一步下一步, ...

  5. mfc分个窗口,设置分割条不可移动

    最近要做一个项目,做界面时遇到了这个问题,找了好多资料,终于解决了,在此记录一下,希望对有需要的人有所帮助.好了,不多说了,具体的处理如下: 新建一个类CFixSplitterWnd继承CSplitt ...

  6. php 7 正式发版

    php 7 正式发版 php 在 2015年 12月 3 日 正式发布了 php7 以下是php7的新特性 性能是php5.6的2倍 显著的减少了内存的使用 抽象语法书 64位的支持 提高了异常层次 ...

  7. linux chmod使用说明

    chmod是用来改变一个目录的访问权限的,一般的方式是:chmod a+rwx 其中a代表全部,还有u[目录拥有者] ,g[目录拥有组],o[其他用户] r代表读,w代表写,x代表可以执行,对应数字权 ...

  8. 深入A标签点击触发事件而不跳转的详解

    本文介绍下,当点击A标签时,触发事件但不跳转的实现方法,有需要的朋友参考下吧. 点击页面上的空链接,点击后页面自动刷新,并会定位到页面顶端. 不过,有时需要点击#页面但不作跳转,可以这样写: < ...

  9. mysql函数操作

    <?php try{ $dbh = new PDO('mysql:dbname=testdb;host=localhost', 'mysql_user', 'mysql_pwd'); }catc ...

  10. poj2140---herd sums

    #include<stdio.h> #include<stdlib.h> int main() { ,i,j; scanf("%d",&n); ;i ...