返回
mysql缓存配置

8.3 skymvc的mysql缓存配置

/**表sky_dbcache**/
/**
CREATE TABLE `sky_dbcache` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `k` varchar(225) NOT NULL,
  `v` mediumtext NOT NULL,
  `expire` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `k` (`k`)
) ENGINE=InnoDB AUTO_INCREMENT=768 DEFAULT CHARSET=utf8;
**/

<?php
class mysqlCache{
	public static function set($k,$v,$expire){	 
		$row=M('dbcache')->selectRow("k='".$k."'");
		$data=array(
			"k"=>$k,
			"v"=>urlencode(json_encode($v)), 
			"expire"=>time()+$expire
		);
		if(empty($row)){
			M('dbcache')->insert($data);
		}else{
			M('dbcache')->update($data,"id=".$row['id']);
		}
	}
	
	public static function get($k){
		$row=M('dbcache')->selectRow("k='".$k."'");
		 
		if($row && $row['expire']>time()){
			return json_decode(urldecode($row['v']),true); 
		}
		
		return false;
	}
	public static function delete($k){
		$row=M('dbcache')->delete("k='".$k."'");
	}
}	 
?>