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

直接贴代码

<?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. utf8+bom格式保存php curl乱码问题

    今天开发遇到一个php curl取数据乱码问题 不是gzip也不是编码设置问题 最后有一同事判断为utf8+bom保存数据原因,懒得深入了解utf8+bom,仅做记录 [root@centos5 ~] ...

  2. EC读书笔记系列之10:条款16、17

    条款18 让接口容易被正确使用,不易被误用 记住: ★“促进正确使用”的办法包括接口的一致性,以及与内置类型的行为兼容 ★“阻止误用”的办法包括建立新类型.限制类型上的操作,束缚对象值,以及消除客户的 ...

  3. Mongodb基础知识----Mongodb权威指南阅读

    文档是Mongodb中数据的基本单元,类型关系型数据库中的行,每个文档都有一个键值唯一的键_id.集合可以看做拥有动态模式的表. Mongodb一个实例可以拥有多个相互独立的数据库. Mongodb区 ...

  4. QF——iOS第三方登录和社会化分享

    QQ登录的流程: 1.下载SDK,并添加到项目中: 2.添加SDK需要的依赖库,以及配置文件: 3.重写APPDelegate的方法handleOpenURL和openURL: 4.实现Tencent ...

  5. Windows Server 2008 Enterprise使用12G内存

    开启PAE选项,用以下命令解决这个问题: 1.开始运行cmd2.输入 BCDEdit /set PAE forceenable 后回车3.重起系统显示12GB内存,一切正常

  6. Android 开发中常用小技巧

    TextView中的getTextSize返回值是以像素(px)为单位的, 而setTextSize()是以sp为单位的. 所以如果直接用返回的值来设置会出错,解决办法是 用setTextSize() ...

  7. python模块—urllib

    1. 网页操作 urllib.urlopen(url[,data[,proxies]]) 打开一个url,返回一个文件对象,然后可以进行类似文件对象操作 url:远程数据的路径,即网址 data:表示 ...

  8. python递归函数下不能正常使用yield

    # -*- coding:utf-8 -*- import os import time file_list = [] def findFile(path): listFile = os.listdi ...

  9. windbg命令学习3

    3.进程与线程: 既可以显示进程和线程列表,又可以显示指定进程或线程的详细信息.调试命令可以提供比taskmgr更详尽的进程资料,在调试过程中不可或缺. 3.1. 进程命令 进程命令包括以下:显示进程 ...

  10. poj2000---和1969一样的模板

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