包 | cache |
---|---|
类层次 | class QCache_File |
版本 | $Id: file.php 2543 2009-06-07 07:07:00Z dualface $ |
QCache_File 类提供以文件系统来缓存数据的服务
属性 | 类型 | 描述 | 定义于 |
---|---|---|---|
$_enabled | boolean | 是否允许使用缓存 | QCache_File |
$_default_policy | array | 默认的缓存策略 | QCache_File |
$_static_head | string | 固定要写入缓存文件头部的内容 | QCache_File |
$_static_head_len | int | 固定头部的长度 | QCache_File |
$_head_len | int | 缓存文件头部长度 | QCache_File |
方法 | 描述 | 定义于 |
---|---|---|
__construct() | 构造函数 | QCache_File |
set() | 写入缓存 | QCache_File |
get() | 读取缓存,失败或缓存撒失效时返回 false | QCache_File |
remove() | 删除指定的缓存 | QCache_File |
方法 | 描述 | 定义于 |
---|---|---|
_path() | 确定缓存文件名,并创建需要的次级缓存目录 | QCache_File |
_policy() | 返回有效的策略选项 | QCache_File |
_hash() | 获得数据的校验码 | QCache_File |
是否允许使用缓存
默认的缓存策略
如果设置为 0 表示缓存总是失效,设置为 null 则表示不检查缓存有效期。
可以很方便的缓存 PHP 变量值(例如数组),但要慢一点。
如果缓存ID存在非文件名字符,那么必须对缓存文件名编码。
如果大于 1,则会在缓存目录下创建子目录保存缓存文件。
如果要写入的缓存文件超过 500 个,目录深度设置为 1 或者 2 较为合适。
如果有更多文件,可以采用更大的缓存目录深度。
crc32 速度较快,而且安全。md5 速度最慢,但最可靠。strlen 速度最快,可靠性略差。
固定要写入缓存文件头部的内容
固定头部的长度
缓存文件头部长度
public void __construct($default_policy)
$default_policy | 默认的缓存策略 | |
{return} |
构造函数
public void set($id, $data, $policy)
$id | string | |
$data | mixed | |
$policy | array | |
{return} |
写入缓存
public mixed get($id, $policy)
$id | string | |
$policy | array | |
{return} | mixed |
读取缓存,失败或缓存撒失效时返回 false
public void remove($id, $policy)
$id | string | |
$policy | array | |
{return} |
删除指定的缓存
protected string _path($id, $policy, $mkdirs)
$id | string | |
$policy | array | |
$mkdirs | boolean | |
{return} | string |
确定缓存文件名,并创建需要的次级缓存目录
protected array _policy($policy)
$policy | array | |
{return} | array |
返回有效的策略选项
protected string _hash($data, $type)
$data | string | |
$type | string | |
{return} | string |
获得数据的校验码