本文整理汇总了PHP中Zend_Cache_Backend类的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Cache_Backend类的具体用法?PHP Zend_Cache_Backend怎么用?PHP Zend_Cache_Backend使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Zend_Cache_Backend类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __construct
/**
* Constructor
*
* @param array $options associative array of options
*/
public function __construct($options = array())
{
if (!extension_loaded('memcache')) {
Zend_Cache::throwException('The memcache extension must be loaded for using this backend !');
}
parent::__construct($options);
if (isset($options['servers'])) {
$value = $options['servers'];
if (isset($value['host'])) {
// in this case, $value seems to be a simple associative array (one server only)
$value = array(0 => $value);
// let's transform it into a classical array of associative arrays
}
$this->setOption('servers', $value);
}
$this->_memcache = new Memcache();
foreach ($this->_options['servers'] as $server) {
if (!array_key_exists('persistent', $server)) {
$server['persistent'] = Zend_Cache_Backend_Memcached::DEFAULT_PERSISTENT;
}
if (!array_key_exists('port', $server)) {
$server['port'] = Zend_Cache_Backend_Memcached::DEFAULT_PORT;
}
$this->_memcache->addServer($server['host'], $server['port'], $server['persistent']);
}
}
示例2: __construct
/**
* Constructor
*
* @param array $options associative array of options
* @throws Zend_Cache_Exception
* @return void
*/
public function __construct($options = array())
{
if ($options['backend'] instanceof Zend_Cache_Backend_Interface || $options['backend'] instanceof Tid_Zend_Cache_Backend_Abstract) {
$this->_backend = $options['backend'];
} else {
Zend_Cache::throwException('The backend option is not correctly set!');
}
$this->_id = '__' . get_class($this) . '__';
parent::__construct($options);
}
示例3: __construct
/**
* Constructor
*
* @param array $options associative array of options
* @throws \Zend_Cache_Exception
*/
public function __construct(array $options = [])
{
if (!extension_loaded('eaccelerator')) {
\Zend_Cache::throwException('The eaccelerator extension must be loaded for using this backend !');
}
parent::__construct($options);
}
示例4: __construct
/**
* Constructor
*
* @param array $options associative array of options
* @throws Zend_Cache_Exception
* @return void
*/
public function __construct(array $options = [])
{
if (!extension_loaded('redis')) {
Zend_Cache::throwException('The redis extension must be loaded for using this backend !');
}
parent::__construct($options);
$this->_redis = new Redis();
foreach ($this->_options['servers'] as $server) {
if (!array_key_exists('port', $server)) {
$server['port'] = self::DEFAULT_PORT;
}
if (!array_key_exists('host', $server)) {
$server['host'] = self::DEFAULT_HOST;
}
if (!array_key_exists('persistent', $server)) {
$server['persistent'] = self::DEFAULT_PERSISTENT;
}
if (!array_key_exists('dbindex', $server)) {
$server['dbindex'] = self::DEFAULT_DBINDEX;
}
if ($server['persistent']) {
$result = $this->_redis->pconnect($server['host'], $server['port']);
} else {
$result = $this->_redis->connect($server['host'], $server['port']);
}
if ($result) {
$this->_redis->select($server['dbindex']);
} else {
$this->_redis = null;
}
}
}
示例5: Clean
/**
* Чистит кеши
*
* @param int $cMode Режим очистки кеша
* @param array $aTags Список тегов, актуально для режима Zend_Cache::CLEANING_MODE_MATCHING_TAG
* @return bool
*/
public function Clean($cMode = Zend_Cache::CLEANING_MODE_ALL, $aTags = array())
{
if (!$this->bUseCache) {
return false;
}
return $this->oBackendCache->clean($cMode, $aTags);
}
示例6: __construct
/**
* Constructor
*
* @param array $options associative array of options
* @throws Zend_Cache_Exception
* @return void
*/
public function __construct(array $options = array())
{
if (!function_exists('zend_shm_cache_store')) {
Zend_Cache::throwException('Glitch_Cache_Backend_ZendShMem backend has to be used within Zend Server / Zend Platform environment.');
}
parent::__construct($options);
}
示例7: __construct
/**
* Constructor
*
* @param array $options associative array of options
* @throws Zend_Cache_Exception
* @return void
*/
public function __construct(array $options = array())
{
if (!extension_loaded('xcache')) {
Zend_Cache::throwException('The xcache extension must be loaded for using this backend !');
}
parent::__construct($options);
}
示例8: __construct
/**
* Constructor
*
* @param array $options associative array of options
* @throws Zend_Cache_Exception
* @return void
*/
public function __construct(array $options = array())
{
if (!extension_loaded('redis')) {
Zend_Cache::throwException('The redis extension must be loaded for using this backend !');
}
$this->_redis = new Redis();
parent::__construct($options);
}
示例9: setOption
/**
* Interceptor child method to handle the case where a Model or
* Database object is being set since it's not supported by the
* standard backend interface
*
* @param string $name
* @param mixed $value
* @return void
*/
public function setOption($name, $value)
{
if ($name == 'db_object') {
$this->setDbObject($value);
} else {
parent::setOption($name, $value);
}
}
示例10: getOption
/**
* Retrieve any option via interception of the parent's statically held
* options including the local option for a tag cache.
*
* @param string $name
* @return mixed
*/
public function getOption($name)
{
if ($name == 'tag_cache') {
return $this->getInnerCache();
} else {
return parent::getOption($name);
}
}
示例11: setOption
/**
* Interceptor child method to handle the case where an Inner
* Cache object is being set since it's not supported by the
* standard backend interface
*
* @param string $name
* @param mixed $value
* @return void
*/
public function setOption($name, $value)
{
if ($name == 'tag_cache') {
$this->setInnerCache($value);
} else {
parent::setOption($name, $value);
}
}
示例12: getOption
/**
* Retrieve any option via interception of the parent's statically held
* options including the local option for a tag cache.
*
* @param string $name
* @return mixed
*/
public function getOption($name)
{
$name = strtolower($name);
if ($name == 'tag_cache') {
return $this->getInnerCache();
}
return parent::getOption($name);
}
示例13: testCleanType
public function testCleanType()
{
$this->_model->allowUse('single_tag');
$this->_model->allowUse('multiple_tags');
$this->_cacheFrontend->expects($this->at(0))->method('clean')->with(Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG, array('TAG_ONE', 'TAG_TWO'));
$this->_cacheFrontend->expects($this->at(1))->method('load')->with(strtoupper(Mage_Core_Model_Cache::INVALIDATED_TYPES))->will($this->returnValue(serialize(array('single_tag' => 1, 'multiple_tags' => 1))));
$this->_cacheFrontend->expects($this->at(2))->method('save')->with(serialize(array('single_tag' => 1)), strtoupper(Mage_Core_Model_Cache::INVALIDATED_TYPES));
$this->_model->cleanType('multiple_tags');
}
示例14: __construct
public function __construct(array $options = array())
{
if (isset($options['cache_id_prefix'])) {
throw new Kwf_Exception("Unsupported optoin for Apcu backend: cache_id_prefix");
}
if (!extension_loaded('apcu')) {
Zend_Cache::throwException('The apcu extension must be loaded for using this backend !');
}
parent::__construct($options);
}
示例15: __construct
/**
* @param array $options
*/
public function __construct(array $options = array())
{
if (!extension_loaded('mongo') || !version_compare(\Mongo::VERSION, '1.2.11', '>=')) {
\Zend_Cache::throwException("At least 1.2.11 version of 'mongo' extension is required for using MongoDb cache backend");
}
if (empty($options['db'])) {
\Zend_Cache::throwException("'db' option is not specified");
}
parent::__construct($options);
}