#1 jake

在日常的编程中,开发者会经常遇到需要在程序中保存一些小的变量,但是又不希望用到数据库那么复杂;又或者是希望能够对数据进行文件式的缓存操作以提高程序的运行速度的时候,我们推荐使用sp框架提供的spAccess数据操作函数。

spAccess数据操作函数在以下几种情况是比较适合的:


  • 保存一些小的变量,不需要用数据库。
  • 对程序做暂时跳过数据库操作的文本缓存机制,比如类似smarty的页面缓存,或者是spCache的按函数缓存程序等。
  • 希望以上所述的数据可以自动到期删除。

spAccess —— 数据操作函数

用法:

spAccess($method, $name, $value = NULL, $life_time = -1)

下面介绍spAccess的三种操作:

一、存入数据操作:

spAccess('w',  $name, $value = NULL, $life_time = -1)

$name,设定的数据名称,也就是标识该数据的名称。

$value,需要保存的值,可以是数组,字符串或者是对象等。

$life_time,数据生存时间,$life_time是从当前时间再往后的秒数,比如设置$life_time=3600就是该数据到一小时后便自动过期删除。$life_time默认是永远也不会过期。

例子:

 $pre_data = array( 100, 'i am string!' ); // 一个数组 
// 保存该数组为my_data,生存时间为一个小时
spAccess('w' , 'my_data', $pre_data, 3600);

二、读取数据操作:

spAccess('r',  $name)

$name,设定的数据名称,这里标识着需要读取的数据名称。如上例中的my_data。

例子:

// 将my_data获取到$now_data中
$now_data = spAccess('r' , 'my_data');
dump($now_data);

当my_data还在一小时的生存期内,dump($now_data);将输出:

Array

(

[0] => 100,

[1] => 'i am string!

)

当my_data已经过期,$now_data将等于FALSE;

三、清除数据操作:

spAccess('c',  $name)

$name,设定的数据名称,这里标识着需要清除的数据名称。如上例中的my_data。

例子:

// 首先清除了my_data
spAccess('c', 'my_data');
// 将my_data获取到$now_data中
$now_data = spAccess('r' , 'my_data');
dump($now_data); // $now_data将为FALSE。
spAccess数据操作函数是非常有用的sp函数之一,它甚至可以在一定程度上成为数据库的替代品。

2012-08-04 16:54:54