编程语言
首页 > 编程语言> > 【opencart3源码分析】APC缓存类

【opencart3源码分析】APC缓存类

作者:互联网

<?php
namespace Cache;
/**
 * APC类
 * @package Cache
 */
class APC {
    // 过期时间
	private $expire;
	// 是否开启,默认否
	private $active = false;
    // 构造方法
	public function __construct($expire) {
		$this->expire = $expire;
		$this->active = function_exists('apc_cache_info') && ini_get('apc.enabled');
	}
    // 获取
	public function get($key) {
		return $this->active ? apc_fetch(CACHE_PREFIX . $key) : false;
	}
    // 设置
	public function set($key, $value) {
		return $this->active ? apc_store(CACHE_PREFIX . $key, $value, $this->expire) : false;
	}
    // 删除
	public function delete($key) {
		if (!$this->active) {
			return false;
		}
		
		$cache_info = apc_cache_info('user');

		$cache_list = $cache_info['cache_list'];

		foreach ($cache_list as $entry) {
			if (strpos($entry['info'], CACHE_PREFIX . $key) === 0) {
				apcu_delete($entry['info']);
			}
		}
	}
}

 

标签:info,function,cache,源码,key,apc,active,APC,opencart3
来源: https://blog.51cto.com/u_14097531/2980803