public function testOutputApcCache() { $ready = $this->_prepareApc(); if (!$ready) { return false; } apc_delete('_PHCAtest-output'); $time = date('H:i:s'); $frontCache = new Phalcon\Cache\Frontend\Output(array('lifetime' => 2)); $cache = new Phalcon\Cache\Backend\Apc($frontCache); ob_start(); //First time cache $content = $cache->start('test-output'); if ($content !== null) { $this->assertTrue(false); } echo $time; $cache->save(null, null, null, true); $obContent = ob_get_contents(); ob_end_clean(); $this->assertEquals($time, $obContent); $this->assertEquals($time, apc_fetch('_PHCAtest-output')); //Expect same cache $content = $cache->start('test-output'); if ($content === null) { $this->assertTrue(false); } $this->assertEquals($content, $obContent); $this->assertEquals($content, apc_fetch('_PHCAtest-output')); //Query keys $keys = $cache->queryKeys(); $this->assertEquals($keys, array(0 => 'test-output')); //Delete entry from cache $this->assertTrue($cache->delete('test-output')); }
public function testDataApcCache() { $ready = $this->_prepareApc(); if (!$ready) { return false; } apc_delete('_PHCAtest-data'); $frontCache = new Phalcon\Cache\Frontend\Data(); $cache = new Phalcon\Cache\Backend\Apc($frontCache); $data = array(1, 2, 3, 4, 5); $cache->save('test-data', $data); $cachedContent = $cache->get('test-data'); $this->assertEquals($cachedContent, $data); $cache->save('test-data', "sure, nothing interesting"); $cachedContent = $cache->get('test-data'); $this->assertEquals($cachedContent, "sure, nothing interesting"); $this->assertTrue($cache->delete('test-data')); $cache->save('a', 1); $cache->save('long-key', 'long-val'); $cache->save('bcd', 3); $keys = $cache->queryKeys(); sort($keys); $this->assertEquals($keys, array('a', 'bcd', 'long-key')); $this->assertEquals($cache->queryKeys('long'), array('long-key')); $this->assertTrue($cache->delete('a')); $this->assertTrue($cache->delete('long-key')); $this->assertTrue($cache->delete('bcd')); }
<?php //Cache data for 2 days $frontCache = new Phalcon\Cache\Frontend\Data(array('lifetime' => 172800)); $cache = new Phalcon\Cache\Backend\Apc($frontCache, array('prefix' => 'app-data')); //Cache arbitrary data $cache->save('my-data', array(1, 2, 3, 4, 5)); //Get data $data = $cache->get('my-data');
public function testCacheApcFlush() { $frontCache = new Phalcon\Cache\Frontend\Data(array('lifetime' => 10)); // Apc $ready = $this->_prepareApc(); if (!$ready) { return false; } $cache = new Phalcon\Cache\Backend\Apc($frontCache); $data = array(1, 2, 3, 4, 5); $cache->save('data', "1"); $cache->save('data2', "2"); $this->assertTrue($cache->flush()); $this->assertFalse($cache->exists('data')); $this->assertFalse($cache->exists('data2')); }