PHP利用Filesystem函数实现操作缓存(生成,获取,删除操作)
<?php
class File{
//$key 相当于缓存文件的文件名
//$value 缓存数据
private $_dir;//定义默认路径
const EXT='.txt';
public function __construct(){
$this->_dir=dirname(__FILE__).'/files/';
}
public function cacheData($key,$value="",$path=""){
$filename=$this->_dir .$path .$key .self::EXT;
if($value!==""){//将$value值写入缓存
if(is_null($value)){
return @unlink($filename);//删除缓存,@屏蔽错误信息的输出的作用
}
$dir=dirname($filename);
if(!is_dir($dir)){
mkdir($dir,0777);
}
return file_put_contents($filename,json_encode($value));
}
//获取缓存
if(!is_file($filename)){
return false;
}else{
return json_decode(file_get_contents($filename),true);
}
}
}
?>
<?php
require_once("file.php");
$data=array(
'id'=>1,
'name'=>'新浪',
'type'=>array(4,5,6),
'test'=>array(1,45,67=>array(123,'tsysa'),),
);
$file=new File();
//index_mk_cache 为缓存文件名
//$data 为缓存数据
if($file->cacheData('index_mk_cache',$data)){//当$data换为null时,实现输出缓存文件的效果
echo "success";
}else{
echo"error";
}
?>
PHP利用Filesystem函数实现操作缓存(生成,获取,删除操作)的更多相关文章
- c++排序二叉树的出现的私有函数讨论,以及二叉树的删除操作详解
		c++排序二叉树的出现的私有函数讨论, 以及二叉树的删除操作详解 标签(空格分隔): c++ 前言 我在c++学习的过程中, 最近打了一个排序二叉树的题目,题目中出现了私有函数成员,当时没有理解清楚这 ... 
- 利用NtQuerySystemInformation函数遍历进程,遍历线程,获取线程挂起或运行状态
		版权声明:专注于计算机网络安全学习 https://blog.csdn.net/u011672712/article/details/51586030 1 2 3 4 5 6 7 8 9 10 11 ... 
- select 操作选中添加、删除操作Javascript
		//添加选中项 function addItem() { var myMember = document.getElementById("myMember"); var other ... 
- Entity Framework 6 Recipes 2nd Edition(10-8)译 - >映射插入、修改、删除操作到存储过程
		10-8. 映射插入.修改.删除操作到存储过程 问题 想要映射插入.修改.删除操作到存储过程 解决方案 假设已有运动员实体模型,如Figure 10-8所示. 对应的数据库表如Figure 10-9所 ... 
- mySql事务_ _Java中怎样实现批量删除操作(Java对数据库进行事务处理)?
		本文是记录Java中实现批量删除操作(Java对数据库进行事务处理),在开始之前先来看下面这样的一个页面图: 上面这张图片显示的是从数据库中查询出的出租信息,信息中进行了分页处理,然后每行的前面提 ... 
- ASP.NET MVC3 实例(六) 增加、修改和删除操作(二)
		http://www.jquery001.com/asp.net-mvc3-instance-add-update-delete2.html 上篇我们在 ASP.NET MVC3 中实现了添加操作,由 ... 
- 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑)  C#中缓存的使用  C#操作redis  WPF 控件库——可拖动选项卡的TabControl  【Bootstrap系列】详解Bootstrap-table  AutoFac  event 和delegate的分别  常见的异步方式async 和 await C# Task用法  c#源码的执行过程
		反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) 背景介绍: 为了平衡社区成员的贡献和索取,一起帮引入了帮帮币.当用户积分(帮帮点)达到一定数额之后,就会“掉落”一定数量的“帮帮 ... 
- python对缓存(memcached,redis)的操作
		1.Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的 ... 
- PHP 5 Filesystem 函数
		PHP Filesystem 简介 Filesystem 函数允许您访问和操作文件系统. 安装 Filesystem 函数是 PHP 核心的组成部分.无需安装即可使用这些函数. Runtime 配置 ... 
随机推荐
- 20Mybatis_订单商品数据模型_一对一查询——resultType和resultMap两种方式以及两种方式的总结
			上一篇文章分析了数据模型,这篇文章就给出一个需求,这个需求是一对一查询,并完成这个需求. ------------------------------------------------------- ... 
- 我的WCF摸爬滚打之路(2)
			昨天抽空写了一个wcf的创建和宿主程序的创建文章,下面也有很多园友给了评论,在此谢谢大家给了我继续记录我的摸爬滚打之路信心……抱拳! 上次的文章<我的WCF摸爬滚打之路(1)>中写到,在测 ... 
- 基于Microsoft Azure、ASP.NET Core和Docker的博客系统
			欢迎阅读daxnet的新博客:一个基于Microsoft Azure.ASP.NET Core和Docker的博客系统 2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客 ... 
- 数据爬取ing
			ing import urllib for i in range(0,1,1): url='****/GetData?loginName=&userName=&beginDate=20 ... 
- 使用js使某个按钮在5秒内不能重复点击
			<head> <!--参考:http://illy.iteye.com/blog/1534276 --> <!-- http://y.dobit.top/Detail/1 ... 
- windows 7 和 Ubuntu的双系统安全删除Ubuntu
			1,准备文件 百度云盘链接:http://pan.baidu.com/s/1kVxuwSn 密码:e8ma 2,操作流程 #1,进入win7,将第一步下载的文件放在C:\windows\system3 ... 
- 学习Shell脚本编程(第2期)_编写修改权限及执行Shell程序的步骤
			编写Shell程序 执行Shell程序 Shell程序有很多类似C语言和其他程序设计语言的特征,但是又没有程序语言那样复杂.Shell程序是指放在一个文件中的一系列Linux命令和实用程序.在执行的时 ... 
- [CareerCup] 3.6 Sort Stack 栈排序
			3.6 Write a program to sort a stack in ascending order (with biggest items on top). You may use at m ... 
- 创建Maven工程
			一.Maven工程创建 File->New->Other,进入: 点击Next,进入: 勾选上Create a simple project(不使用骨架) 点击Next,进入: 输入项目名 ... 
- 一份完整的nginx配置
			#user nobody;worker_processes 24;worker_rlimit_nofile 262144;worker_cpu_affinity 0000000000000000000 ... 
