php开发安卓服务器之 使用创办动态缓存

php中文网
发布: 2016-06-13 12:11:41
原创
870人浏览过

php开发安卓服务器之 使用创建动态缓存
为什么要有缓存:减少数据库服务器压力。
一.静态缓存:
  保存在服务器磁盘的静态文件,用php生成数据放在静态文件中
php操作缓存:
1.生成缓存
2.获取缓存

3.删除缓存


生成缓存文件:


file.php操作静态缓存的类

立即学习PHP免费学习笔记(深入)”;

<?phpclass File {//操作静态缓存的业务	private $_dir;	const EXT = '.txt';	public function __construct() {		//获取文件当前目录,把缓存文件放到当前目录files下		$this->_dir = dirname(__FILE__) . '/files/';	}	//key是缓存文件文件名,value是缓存数据	public function cacheData($key, $value = '', $path='') {		$filename = $this->_dir . $path . $key . self::EXT;		if($value !== '') { // 将value值写入缓存			 			 //获取目录,判断如果目录不存在,创建目录			$dir = dirname($filename);			if(!is_dir($dir)) {				mkdir($dir, 0777);//生成目录,给出权限			}			//第一个参数文件名,第二个数据(String),把数组vlaue转换成字符串			return file_put_contents($filename,json_encode($value));		}			}}
登录后复制

testfile.php


<?phprequire_once('./file.php');$data=array('id'=>1,'name'=>'david','type'=>array(4,5,6));$file=new File();if($file->cacheData('davidcache',$data)){echo "success";}else{echo "error";}
登录后复制

如果生成成功显示success

这样就在当前文件的目录的file目录下创建了名为davidchche.txt的缓存文件。

AppMall应用商店
AppMall应用商店

AI应用商店,提供即时交付、按需付费的人工智能应用服务

AppMall应用商店 56
查看详情 AppMall应用商店



进阶版:同时也实现缓存的读和删除


file.php

<?phpclass File {//操作静态缓存的业务	private $_dir;	const EXT = '.txt';	public function __construct() {		//获取文件当前目录,把缓存文件放到当前目录files下		$this->_dir = dirname(__FILE__) . '/files/';	}	//key是缓存文件文件名,value是缓存数据	public function cacheData($key, $value = '', $path='') {		$filename = $this->_dir . $path . $key . self::EXT;		if($value !== '') { // 将value值写入缓存			              if(is_null($value)) {//如果value值穿null则删除这个缓存文件				return @unlink($filename);			}			 //获取目录,判断如果目录不存在,创建目录			$dir = dirname($filename);			if(!is_dir($dir)) {				mkdir($dir, 0777);//生成目录,给出权限			}			//第一个参数文件名,第二个数据(String),把数组vlaue转换成字符串			return file_put_contents($filename,json_encode($value));		}		if(!is_file($filename))//读取缓存文件		{			return FALSE;		}else{            return json_decode(file_get_contents($filename),true);		}			}}
登录后复制

根据file类,如果value为空='',读取缓存数据,
 如果value为null,删除缓存数据,
 如果value不为空,也不是null,那么创建缓存数据

testfile.php


<?phprequire_once('./file.php');$data=array('id'=>1,'name'=>'david','type'=>array(4,5,6));$file=new File();//删除缓存文件if($file->cacheData('davidcache',null)){	//if($file->cacheData('davidcache')){	//var_dump($file->cacheData('davidcache'));	//exit;echo "success";}else{echo "error";}    /*下面这个是读取缓存时使用的	if($file->cacheData('davidcache')){	var_dump($file->cacheData('davidcache'));	exit;echo "success";}else{echo "error";}*//*下面这个是创建缓存调用的if($file->cacheData('davidcache',$data)){echo "success";}else{echo "error";}*///根据file类,如果value为空='',读取缓存数据,//如果value为null,删除缓存数据,//如果value不为空,也不是null,那么创建缓存数据
登录后复制


PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号