Maison > php教程 > PHP源码 > KVDB php class for SAE

KVDB php class for SAE

PHP中文网
Libérer: 2016-05-26 08:18:26
original
1132 Les gens l'ont consulté

KVDB PHP class for SAE    

<?php
class kvdb
{
	public $kvdb; //SAE kvdb

	public function __construct()
	{
		$this->kvdb = new SaeKV();
		$this->kvdb->init();
	}

	public function get($key)
	{
		return $this->kvdb->get($key);
	}

	public function set($key, $value)
	{
		return $this->kvdb->set($key, $value);
	}

	public function replace($key, $value)
	{
		return $this->kvdb->replace($key, $value);
	}

	public function delete($key)
	{
		return $this->kvdb->delete($key);
	}

	public function mget($array)
	{
		return $this->kvdb->mget($array);
	}

	public function pkrget($prefix, $num=10, $offset=&#39;&#39;)
	{
		return $this->kvdb->pkrget($prefix, $num, $offset);
	}

	public function errmsg()
	{
		return $this->kvdb->errmsg();
	}


	/**
	 * kvdb cache
	 */
	public function cache ($action, $key, $value=&#39;&#39;, $timeout=300)
	{
		$key = &#39;cache_&#39; . $key;
		switch ($action)
		{
			case &#39;get&#39;:
				return $this->cache_get($key);
				break;

			case &#39;set&#39;:
				return $this->cache_set($key, $value, $timeout);
				break;

			case &#39;delete&#39;:
				return $this->cache_delete($key);
				break;
			
			default:
				return false;
				break;
		}
	}

	public function cache_get ($key)
	{
		$data = $this->get($key);
		if ($data)
		{
			$array = unserialize($data);
			if (isset($array[&#39;timeout&#39;]) && ($array[&#39;timeout&#39;] > time()) )
				$data = $array[&#39;data&#39;];
			else
				$data = &#39;&#39;; // 应用场景中此处缓存马上会更新,无法删除操作。
		}
		return $data;
	}

	public function cache_set ($key, $value, $timeout)
	{
		$array = array(
			&#39;data&#39; => $value,
			&#39;timeout&#39; => time() + $timeout
		);
		return $this->set($key, serialize($array));
	}

	public function cache_delete ($key)
	{
		return $this->delete($key);
	}
}
Copier après la connexion

                   

                   

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal