您现在的位置: > 首页 > 网站建设 > 网页编程
>> 最新教程
>> 热门教程
>> 最新游戏资讯
>> 热门游戏资讯
ZendFramework中使用Cache缓存机制
作者:本站                来自:安迪教程网                 加入时间:08-11-20                进入论坛讨论

  如下图所示建立工程:

hp.agwcn.com

  代码如下:

<?php
/**
*IndexController-Thedefaultcontrollerclass
* 
*@author
*@version 
*/
require_once'Zend/Controller/Action.php';
require_once'Zend/Cache.php';
require_once'Zend/Registry.php';
require_once'Zend/Db.php';
require_once'Zend/Db/Table.php';;
classIndexControllerextendsZend_Controller_Action 
{
  publicfunctioninit() 
  { 
    $params=array('host'=>'localhost', 
            'username'=>'root', 
            'password'=>'root', 
            'dbname' =>'mysql'); 
    $db=Zend_Db::factory('Pdo_Mysql',$params); 
    Zend_Db_Table::setDefaultAdapter($db); 
    Zend_Registry::set('db',$db); 
  } 
  publicfunctionindexAction() 
  {
    $frontendOptions=array(
      'lifeTime'=>7200,//两小时的缓存生命期
      'automatic_serialization'=>true
    );
    $backendOptions=array(
      'cache_dir'=>'C:/tmp/'//放缓存文件的目录
    );
    //取得一个Zend_Cache_Core对象
    $cache=Zend_Cache::factory('Core', 
                  'File', 
                  $frontendOptions, 
                  $backendOptions);
    if(!$result=$cache->load('myresult')){
      //缓存不命中;连接到数据库
      $dbAdapter=Zend_Registry::get('db');
      $result=$dbAdapter->query('SELECT*FROMuser')->fetchAll();
      $cache->save($result,'myresult');
      echo"Thisoneisfromdatabase!<br/>";
    }else{
      //cachehit!shoutsothatweknow
      echo"Thisoneisfromcache!<br/>";
    }
    print_r($result);              
  }
}

联系方式:QQ:6084884 email:agwcn@126.com 粤ICP备05055782号
本网站中发布的文章只代表发表人的个人观点,不代表安迪教程网网站的立场
copyright© 2000-2004 安迪教程网 All rights reserved agwcn.com