Пример #1
0
 public function testRestoreFailure()
 {
     $storage1 = $this->getMock('ezcCacheStackableStorage', array('reset', 'purge', 'restore'));
     $storage1->expects($this->once())->method('restore')->with('id_1', array())->will($this->returnValue(false));
     $storage2 = $this->getMock('ezcCacheStackableStorage', array('reset', 'purge', 'restore'));
     $storage2->expects($this->once())->method('restore')->with('id_1', array())->will($this->returnValue(false));
     $stack = new ezcCacheStack('foo');
     $stack->options->metaStorage = $this->getMetaStorageMock();
     $stack->pushStorage(new ezcCacheStackStorageConfiguration('id_1', $storage1, 10, 0.5));
     $stack->pushStorage(new ezcCacheStackStorageConfiguration('id_2', $storage2, 100, 0.7));
     $this->assertFalse($stack->restore('id_1'));
 }
<?php

require_once 'tutorial_autoload.php';
$stack = new ezcCacheStack('stack');
$stack->pushStorage(new ezcCacheStackStorageConfiguration('file', $fileStorage, 1000000, 0.5));
$stack->pushStorage(new ezcCacheStackStorageConfiguration('apc', $apcStorage, 1000, 0.3));
$stack->options->replacementStrategy = 'ezcCacheStackLfuReplacementStrategy';
// ... somewhere else...
$stack->store('id_1', 'id_1_data');
$stack->store('id_2', 'id_2_data', array('attribute' => 'value'));
$id1data = $stack->restore('id_1');