public function testSessionLibmemcached() { $session = new Phalcon\Session\Adapter\Libmemcached(array('servers' => array(array('host' => '127.0.0.1', 'port' => '11211')), 'prefix' => 'libmemcached')); $this->assertFalse($session->start()); $this->assertFalse($session->isStarted()); @session_start(); $session->set('some', 'value'); $this->assertEquals($session->get('some'), 'value'); $this->assertTrue($session->has('some')); $this->assertEquals($session->get('undefined', 'my-default'), 'my-default'); // Automatically deleted after reading $this->assertEquals($session->get('some', NULL, TRUE), 'value'); $this->assertFalse($session->has('some')); @session_destroy(); }
}); /** * If the configuration specify the use of metadata adapter use it or use memory otherwise */ $di->setShared('modelsMetadata', function () { return new MetaDataAdapter(); }); $di->setShared('logger', function () use($config) { $formatter = new \Phalcon\Logger\Formatter\Line('%date% %type% %message%'); $logger = new \Phalcon\Logger\Adapter\File('../phalcon.log'); $logger->setLogLevel(\Phalcon\Logger::DEBUG); $logger->setFormatter($formatter); return $logger; }); /** * Start the session the first time some component request the session service */ $di->setShared('session', function () { $session = new Phalcon\Session\Adapter\Libmemcached(array('servers' => array(array('host' => 'localhost', 'port' => 11211, 'weight' => 1)), 'client' => array(Memcached::OPT_HASH => Memcached::HASH_MD5, Memcached::OPT_PREFIX_KEY => 'prefix.'), 'lifetime' => 3600, 'prefix' => 'my_')); $session->start(); return $session; }); $di->set('security', function () { $security = new \Phalcon\Security(); $security->setWorkFactor(12); return $security; }, true); $di->set('router', function () { require __DIR__ . '/routes.php'; return $router; });