PHP缓存集成库phpFastCache用法
本篇章节讲解PHP缓存集成库phpFastCache用法。分享给大家供大家参考。具体分析如下: phpFastCache是一个开源的PHP缓存库,只提供一个简单的PHP文件,可方便集成到已有项目,支持多种缓存方法,包括:apc,memcache,memcached,wincache,files,pdo and mpdo。可通过简单的API来定义缓存的有效时间。 代码如下: // phpFastCache support "apc","memcache","memcached","wincache","files","sqlite" and "xcache" // You don't need to change your code when you change your caching system. Or simple keep it auto $cache = phpFastCache(); // In your Class,Functions,PHP Pages // try to get from Cache first. product_page = YOUR Identity Keyword $products = $cache->get("product_page"); if($products == null) { $products = YOUR DB QUERIES || GET_PRODUCTS_FUNCTION; // set products in to cache in 600 seconds = 10 minutes $cache->set("product_page",$products,600); } // Output Your Contents $products HERE 提高cURL和API调用性能 代码如下: $cache = phpFastCache("memcached"); // try to get from Cache first. $results = $cache->get("identity_keyword") if($results == null) { $results = cURL->get("http://www.youtube.com/api/json/url/keyword/page"); // Write to Cache Save API Calls next time $cache->set("identity_keyword",$results,3600*24); } foreach($results as $video) { // Output Your Contents HERE } 全页缓存 代码如下: // keyword = Webpage_URL $keyword_webpage = md5($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].$_SERVER['QUERY_STRING']); $html = __c("files")->get($keyword_webpage); if($html == null) { ob_start(); /* ALL OF YOUR CODE GO HERE RENDER YOUR PAGE,DB QUERY,WHATEVER */ // GET HTML WEBPAGE $html = ob_get_contents(); // Save to Cache 30 minutes __c("files")->set($keyword_webpage,$html,1800); } echo $html; 挂件缓存 代码如下: $html = $cache->widget_1; if($html == null) { $html = Render Your Page || Widget || "Hello World"; // Save to Cache 30 minutes $cache->widget_1 = array($html,1800); } echo or return your $html; 同时使用多种缓存 代码如下: $cache1 = phpFastCache(); $cache2 = __c("memcache"); $server = array(array("127.0.0.1",11211,100),array("128.5.1.3",11215,80)); $cache2->option("server",$server); $cache3 = new phpFastCache("apc"); // How to Write? $cache1->set("keyword1","string|number|array|object",300); $cache2->keyword2 = array("something here",600); __c()->keyword3 = array("array|object",3600*24); // How to Read? $data = $cache1->get("keyword1"); $data = $cache2->keyword2; $data = __c()->keyword3; $data = __c()->get("keyword4"); // Free to Travel between any caching methods $cache1 = phpFastCache("files"); $cache1->set("keyword1",$value,$time); $cache1->memcache->set("keyword1",$time); $cache1->apc->set("whatever",300); $cache2 = __c("apc"); $cache2->keyword1 = array("so cool",300); $cache2->files->keyword1 = array("Oh yeah!",600); $data = __c("memcache")->get("keyword1"); $data = __c("files")->get("keyword2"); $data = __c()->keyword3; // Multiple ? No Problem $list = $cache1->getMulti(array("key1","key2","key3")); $cache2->setMulti(array("key1","value1",300), array("key2","value2",600), array("key3","value3",1800), ); $list = $cache1->apc->getMulti(array("key1","key3")); __c()->memcache->getMulti(array("a","b","c")); // want more? Check out document in source code 希望本文所述对大家的PHP程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |