实例介绍
【实例简介】
Zend/Cache.php相关的示例代码,新手入门,较为常用
【实例截图】
【核心代码】
代码片段一:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
$frontendOptions=array(
'lifeTime'=>7200, //设置缓存数据的生命期(2小时)
'automaticSerialization'=>true //设置缓存数据是否可序列化
); //定义前端设置数组
$backendOptions=array(
'cacheDir'=>'./' //设置缓存数据文件的存放路径(当前目录)
); //定义后端设置数组
//获取一个前端
$cache=Zend_Cache::factory('Core','File',$frontendOptions,$backendOptions);
if(!$result=$cache->load('cache_c')) //查看缓存是否存在
{
echo "指定缓存不存在"; //输出内容
//如果指定的缓存数据不存在
$filename="temp.txt"; //定义文件名
$fp=fopen($filename,'r'); //以读取方式打开文件
$result=fread($fp,filesize($filename)); //读取文件内容到变量
fclose($fp); //关闭文件句柄
$cache->save($result,'cache_c'); //将数据内容保存到缓存中
}
else //如果缓存数据存在
{
echo "缓存数据已经存在!"; //输出内容
}
echo "<p>";
print_r($result); //输出结果
?>
代码片段二:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
$frontendOptions=array(
'lifeTime'=>3600, //设置缓存数据的生命期(1小时)
'automaticSerialization'=>true //设置缓存数据是否可序列化
); //定义前端设置数组
$backendOptions=array(
'cacheDir'=>'./' //设置缓存数据文件的存放路径(当前目录)
); //定义后端设置数组
//获取一个前端
$cache=Zend_Cache::factory('Core','File',$frontendOptions,$backendOptions);
if(!$result=$cache->load('a')) //查看缓存是否存在
{
echo "还没有缓存数据!";
$cache->save('123456789','a'); //将数据内容保存到缓存中
}
else //如果缓存数据存在
{
echo "缓存数据已经存在!"; //输出内容
echo "<p>缓存数据内容为:";
echo $result; //输出结果
$cache->clean('all'); //清除缓存数据
echo "<p>已经又将缓存内容清除!"; //输出清除后的内容
}
?>
代码片段三:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
$frontendOptions=array(
'lifeTime'=>3600, //设置缓存数据的生命期(1小时)
'automaticSerialization'=>true //设置缓存数据是否可序列化
); //定义前端设置数组
$backendOptions=array(
'cacheDir'=>'./' //设置缓存数据文件的存放路径(当前目录)
); //定义后端设置数组
//获取一个前端
$cache=Zend_Cache::factory('Core','File',$frontendOptions,$backendOptions);
$id='myLoop'; //定义一个变量
if(!($data=$cache->load($id))) //判断指定内容是否存在
{
$data=''; //定义临时内容
for($i=0;$i<100;$i ) //循环
{
$data=$data.$i; //内容累加
}
$cache->save($data,$id); //将获取的内容写入到缓存中
}
echo($data); //输出内容
?>
代码片段四:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
$cache=Zend_Cache::factory('Output','File'); //创建一个Cache实例
if(!$cache->start('page_content')) //判断指定Cache是否开始
{
echo '你好,世界'; //输出内容
echo "<p>";
echo '这是被缓存的时间:'.time(); //输出时间
$cache->end(); //结束输出缓冲
}
echo "<p>";
echo '这是没有被缓存的时间:'.time(); //再次输出时间作比较
?>
代码片段五:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
$cache=Zend_Cache::factory('Function','File'); //创建一个Cache实例
function s_3($x,$y) //自定义函数
{
for($i=$x;$i<$y;$i ) //开始从$x到$y的循环
{
if($i%3==0) $result[]=$i; //将所有3的倍数赋值到数组
}
return $result; //返回结果数组
}
$cache->call('s_3',array(1,30),array('temp_s_3')); //调用call方法
$data=$cache->call('s_3',array(1,30),array('temp_s_3')); //载入缓存数据
echo "1与30之间能被3整除的数为:";
echo "<p>";
print_r($data);
?>
代码片段六:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
class my_class //创建一个自定义类
{
public static function f_1($param1,$param2) //求两数的和
{
return ($param1 $param2); //返回两参数的和
}
public static function f_2($param1,$param2) //求两数的积
{
return ($param1*$param2); //返回两参数的积
}
}
$frontendOptions=array(
'cached_entity'=>'my_class' //指定前类名
);
$cache=Zend_Cache::factory('Class','File',$frontendOptions); //创建一个Cache实例
$cache->f_1(3,10); //缓存类的求和函数内容
echo "类的求和函数,3,10的结果为:";
echo "<p>";
echo $cache->f_1(3,10); //取出缓存类的求和函数内容
echo "<p>";
$cache->f_2(3,10); //缓存类的求积函数内容
echo "类的求积函数,3,10的结果为:";
echo "<p>";
echo $cache->f_2(3,10); //取出缓存类的求积函数内容
?>
代码片段七:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
require_once('Zend/Config/Xml.php'); //引用Zend_Config_Xml组件
$frontendOptions=array(
'master_file'=>'14-7.php', //指定Master文件名
'automaticSerialization'=>true //指定自动序列化为真
);
$cache=Zend_Cache::factory('File','File',$frontendOptions); //创建一个Cache实例
$filename="config.xml"; //定义xml配置文件名
$section="stag"; //定义需要加载的节名
$config=new Zend_Config_Xml($filename,$section); //为Zend_Config_Xml类实例化对象
$cache->save($config,'cfg'); //将Zend_Config_Xml对象进行缓存
$result=$cache->load('cfg'); //取出指定缓存内容
echo "WEB服务器地址为:";
echo "<p>";
echo $result->webhost; //输出内容
echo "<p>";
echo "数据库类型为:";
echo "<p>";
echo $result->database->type; //输出内容
echo "<p>";
echo "服务器名称为:";
echo "<p>";
echo $result->database->host; //输出内容
echo "<p>";
echo "登录服务器用户名为:";
echo "<p>";
echo $result->database->username; //输出内容
echo "<p>";
echo "用户密码为:";
echo "<p>";
echo $result->database->password; //输出内容
echo "<p>";
echo "连接的数据库名称为:";
echo "<p>";
echo $result->database->name; //输出内容
?>
代码片段八:
<?php
require_once 'Zend/Cache.php'; //加载Zend_Cache组件
$frontendOptions=array(
'automaticSerialization'=>true //设置缓存数据是否可序列化
); //定义前端设置数组
$backendOptions=array(
'cache_db_complete_path'=>'test.db' //设置Sqlite数据库文件路径
); //定义后端设置数组
//获取一个前端
$cache=Zend_Cache::factory('Core','Sqlite',$frontendOptions,$backendOptions);
$id='myLoop'; //定义一个变量
$a=array(1,3,5,7,9,11,13,15,17,19,21,23,25,27,29); //建立一个数组
$cache->save($a,$id); //保存缓存内容
$result=$cache->load($id); //取出缓存内容
echo "缓存内容为:";
echo "<p>";
print_r($result); //输出读取的缓存结果
?>
标签: Zend
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


网友评论
我要评论