请选择 进入手机版 | 继续访问电脑版

SpeedPHP框架

 找回密码
 注册成为新用户

QQ登录

只需一步,快速开始

查看: 4259|回复: 0

[API参考] spCache

[复制链接]
发表于 2012-8-6 20:37:52 | 显示全部楼层 |阅读模式
函数和数据缓存实现
spCache将带给开发者一种新的方式去进行数据缓存。spCache会智能地将数据库查询返回的结果数据给缓存起来,当程序下次需要这些数据的时候,就不再需要链接数据库再进行查询,而是直接从缓存中获取。


成员变量

public
  • $life_time -- 默认的数据生存期

private
  • $model_obj -- 模型对象
  • $input_args -- 调用时输入的参数



成员函数

  • cache_obj -- 执行spModel子类对象的方法,并对返回结果进行缓存。
  • clear -- 清除单个函数缓存的数据
  • clear_all -- 清除全部函数缓存的数据
  • __input -- 函数式使用模型辅助类的输入函数
  • __call -- 魔术函数,支持多重函数式使用类的方法

位置
spCache类位于 SP_PATH/Core/spModel.php


详细cache_obj

执行spModel子类对象的方法,并对返回结果进行缓存。

result cache_obj(object & obj, string func_name, array func_args, float life_time )

参数:

  • object & obj 引用的spModel子类对象
  • string func_name 需要执行的函数名称
  • array func_args 函数的参数
  • float life_time 缓存生存时间

返回:

cache_obj()返回obj调用func_name函数后返回的结果。

结果将按life_time的时间进行缓存,当缓存存在的情况下,调用cache_obj()将返回缓存中的内容。


cache_obj()主要是通过spModel()->spCache()->findAll()的形式调用,所以开发者并不需要直接调用cache_obj()。
clear

清除单个函数缓存的数据

bool clear(object & obj, string func_name, array func_args)

参数:

  • object & obj, 引用的spModel子类对象
  • string func_name 需要执行的函数名称
  • array func_args 函数的参数

在默认不输入参数func_args的情况下,将清除全部该函数生成的缓存。如果func_args有设置,将只会清除该参数产生的缓存。

clear_all

清除全部函数缓存的数据

bool clear_all(void)

__input

函数式使用模型辅助类的输入函数。

object __input(args args)

__input() 是spController的模型辅助类在使用函数式方法时的标准输入接口。

__call

魔术函数,支持多重函数式使用类的方法




您需要登录后才可以回帖 登录 | 注册成为新用户

本版积分规则

手机浏览|简版|中文PHP框架|开源协议|SpeedPHP.com ( 粤ICP备08008671号

GMT+8, 2020-2-19 18:53

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表