Home > Backend Development > PHP Tutorial > An extremely simple PHP cache code, extremely php cache_PHP tutorial

An extremely simple PHP cache code, extremely php cache_PHP tutorial

WBOY
Release: 2016-07-12 09:06:47
Original
815 people have browsed it

A very simple PHP cache class code, the ultimate php cache

There is a lot of information about the PHP cache class on the Internet, but this class should be the function that I have seen that meets the needs, but it An extremely simple one. Without further ado, let’s just look at the code!
Instructions for use:
1. Instantiation
$cache = new Cache();
2. Set cache time and cache directory
$cache = new Cache(60, '/any_other_path/');
The first parameter is the cache seconds, and the second parameter is the cache path, which can be configured as needed.
By default, the cache time is 3600 seconds and the cache directory is cache/
3. Read cache
$value = $cache->get('data_key');
4. Write cache
$value = $cache->put('data_key', 'data_value');
Full example:

$cache = new Cache(); 
 
//从缓存从读取键值 $key 的数据 
$values = $cache->get($key); 
 
//如果没有缓存数据 
if ($values == false) { 
//insert code here... 
//写入键值 $key 的数据 
$cache->put($key, $values); 
} else { 
//insert code here... 
} 
Copy after login

Cache.class.php

<&#63;php 
class Cache { 
private $cache_path;//path for the cache 
private $cache_expire;//seconds that the cache expires 
 
//cache constructor, optional expiring time and cache path 
public function Cache($exp_time=3600,$path="cache/"){ 
$this->cache_expire=$exp_time; 
$this->cache_path=$path; 
} 
 
//returns the filename for the cache 
private function fileName($key){ 
return $this->cache_path.md5($key); 
} 
 
//creates new cache files with the given data, $key== name of the cache, data the info/values to store 
public function put($key, $data){ 
$values = serialize($data); 
$filename = $this->fileName($key); 
$file = fopen($filename, 'w'); 
if ($file){//able to create the file 
fwrite($file, $values); 
fclose($file); 
} 
else return false; 
} 
 
//returns cache for the given key 
public function get($key){ 
$filename = $this->fileName($key); 
if (!file_exists($filename) || !is_readable($filename)){//can't read the cache 
return false; 
} 
if ( time() < (filemtime($filename) + $this->cache_expire) ) {//cache for the key not expired 
$file = fopen($filename, "r");// read data file 
if ($file){//able to open the file 
$data = fread($file, filesize($filename)); 
fclose($file); 
return unserialize($data);//return the values 
} 
else return false; 
} 
else return false;//was expired you need to create new 
} 
} 
&#63;> 
Copy after login

I believe you will like this simple PHP caching code, and I hope it will be helpful to your learning.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1063896.htmlTechArticleA very simple PHP caching class code, Extreme PHP Cache There is a lot of information about PHP caching class on the Internet, but this class It should be the one I have seen that has functions that meet the needs but is extremely simple...
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template