当前位置: 首页>>代码示例>>PHP>>正文


PHP Memcache类代码示例

本文整理汇总了PHP中Memcache的典型用法代码示例。如果您正苦于以下问题:PHP Memcache类的具体用法?PHP Memcache怎么用?PHP Memcache使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Memcache类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: AuthMemCookie_getMemCache

function AuthMemCookie_getMemCache()
{
    static $memcache;
    /* Return now if we already have a Memcache object. */
    if ($memcache) {
        return $memcache;
    }
    $memcache = new Memcache();
    /* In the config we store memcache servers as a string of host:port-pairs
     * separated by ','. The port number is optional if the server runs at the
     * default port (11211).
     * Example: 'localhost:23122,remote1,10.0.0.71:43232'
     */
    $servers = AuthMemCookie_getOption('memcache_servers', '127.0.0.1');
    foreach (explode(',', $servers) as $server) {
        $hostport = explode(':', $server);
        $host = $hostport[0];
        $port = (int) $hostport[1];
        if (!$port) {
            $port = 11211;
        }
        /* Add server to pool. Sets a weight of 1 and a 10-second timeout. */
        $memcache->addServer($host, $port, TRUE, 1, 10);
    }
    return $memcache;
}
开发者ID:GajendraNaidu,项目名称:openam,代码行数:26,代码来源:authmemcookie.php

示例2: setUp

	/**
	 * Sets up the fixture, for example, opens a network connection.
	 * This method is called before a test is executed.
	 *
	 * @return void
	 * @access protected
	 */
	protected function setUp()
	{
		$memcachetest = false;
		include_once JPATH_BASE.'/libraries/joomla/cache/storage.php';
		include_once JPATH_BASE.'/libraries/joomla/cache/storage/memcache.php';

		if((extension_loaded('memcache') && class_exists('Memcache')) != true ) {
			$this->memcacheAvailable = false; } else {

			$config = JFactory::getConfig();
			$host = $config->get('memcache_server_host', 'localhost');
			$port = $config->get('memcache_server_port',11211);

			$memcache = new Memcache;
			$memcachetest = @$memcache->connect($host, $port); }

			 if (!$memcachetest)
			 {
			 		$this->memcacheAvailable = false;
			 } else $this->memcacheAvailable = true;


		if ($this->memcacheAvailable)
		{
			$this->object = JCacheStorage::getInstance('memcache');
		}
	}
开发者ID:realityking,项目名称:JAJAX,代码行数:34,代码来源:JCacheStorageMemcacheTest.php

示例3: connect

 protected function connect()
 {
     if (class_exists("Memcache")) {
         if (function_exists("getMemcached")) {
             if ($vc6b2148720c14fb58871f480a7cc042e = getmemcached()) {
                 $this->memcache = $vc6b2148720c14fb58871f480a7cc042e;
                 $this->connected = true;
                 return true;
             }
         }
         $vc6b2148720c14fb58871f480a7cc042e = new Memcache();
         $v3a8e4c06e471595f6eb262bb9b5582d9 = mainConfiguration::getInstance();
         $v67b3dba8bc6778101892eb77249db32e = $v3a8e4c06e471595f6eb262bb9b5582d9->get('cache', 'memcache.host');
         if (empty($v67b3dba8bc6778101892eb77249db32e)) {
             $v67b3dba8bc6778101892eb77249db32e = 'localhost';
         }
         $v901555fb06e346cb065ceb9808dcfc25 = $v3a8e4c06e471595f6eb262bb9b5582d9->get('cache', 'memcache.port');
         if (is_null($v901555fb06e346cb065ceb9808dcfc25)) {
             $v901555fb06e346cb065ceb9808dcfc25 = '11211';
         }
         if ($vc6b2148720c14fb58871f480a7cc042e->connect($v67b3dba8bc6778101892eb77249db32e, $v901555fb06e346cb065ceb9808dcfc25)) {
             $this->memcache = $vc6b2148720c14fb58871f480a7cc042e;
             $this->connected = true;
             return true;
         }
         return false;
     } else {
         return false;
     }
 }
开发者ID:BGCX261,项目名称:zimmerli-svn-to-git,代码行数:30,代码来源:memcache.php

示例4: __construct

 public function __construct($exp = 3600)
 {
     $this->expire = $exp;
     if (defined('CACHE_DRIVER')) {
         $this->cachedriver = CACHE_DRIVER;
     }
     if ($this->cachedriver == 'memcached') {
         $mc = new Memcache();
         if ($mc->pconnect(MEMCACHE_HOSTNAME, MEMCACHE_PORT)) {
             $this->memcache = $mc;
             $this->ismemcache = true;
         }
     }
     if (!$this->ismemcache) {
         $files = glob(DIR_CACHE . 'cache.*');
         if ($files) {
             foreach ($files as $file) {
                 $time = substr(strrchr($file, '.'), 1);
                 if ($time < time()) {
                     if (file_exists($file)) {
                         @touch($file);
                         @unlink($file);
                     }
                 }
             }
         }
     }
 }
开发者ID:rb2,项目名称:ocstoreru,代码行数:28,代码来源:cache.php

示例5: defaultAction

 public function defaultAction()
 {
     $memcache = new Memcache();
     $memcache->flush();
     $usuario = new Usuario();
     $daoUsuario = DAOFactory::getUsuarioDAO();
     /** @var $user User */
     $user = UserService::getCurrentUser();
     if (isset($user)) {
         $usuarioBD = $daoUsuario->queryByGoogle($user->getUserId());
         if (!$usuarioBD) {
             // No existe el usuario
             $usuario->google = $user->getUserId();
             $usuario->correo = $user->getEmail();
             $usuario->nombre = $user->getNickname();
             $daoUsuario->insert($usuario);
         } else {
             $usuario = $usuarioBD;
         }
         $_SESSION['logoutUrl'] = UserService::createLogoutUrl('/index/closeSession');
         $_SESSION['usuario'] = $usuario;
         include 'vod/index.php';
     } else {
         $this->login();
     }
 }
开发者ID:roberto-pina,项目名称:ventana-educativa,代码行数:26,代码来源:IndexController.class.php

示例6: indexAction

 public function indexAction()
 {
     $entries = new Entry();
     // test memcached
     if (extension_loaded('memcache')) {
         $mem = new Memcache();
         $mem->addServer('localhost', 11211);
         $result = $mem->get('indexContent');
         if (!$result) {
             $result = $entries->fetchLatest(100);
             $mem->set('indexContent', $result, 0, 4);
         }
     } else {
         $result = $entries->fetchLatest(100);
     }
     if ($result) {
         $this->view->entries = $result;
         // Zend_Paginator
         $page = $this->_request->getParam('page', 1);
         $paginator = Zend_Paginator::factory($result);
         $paginator->setItemCountPerPage(4);
         $paginator->setCurrentPageNumber($page);
         $this->view->paginator = $paginator;
     }
 }
开发者ID:kalimatas,项目名称:zbook,代码行数:25,代码来源:IndexController.php

示例7: Run

 public function Run()
 {
     $memcache = new \Memcache();
     $this->AssertEquals($memcache->connect('localhost', 11211), TRUE, 'connect');
     $memcache->set('testkey', 'testvalue', MEMCACHE_COMPRESSED);
     $this->AssertEquals($memcache->get('testkey'), 'testvalue');
 }
开发者ID:JasonOcean,项目名称:iOS_Interest_Group,代码行数:7,代码来源:memcache_ut.php

示例8: DeleteAll

 /**
  * Invalidate all the objects in the cache
  * @return void
  */
 public function DeleteAll()
 {
     $this->objMemcache->flush();
     // needs to wait one second after flush.
     //  See comment on http://www.php.net/manual/ru/memcache.flush.php#81420
     sleep(1);
 }
开发者ID:vaibhav-kaushal,项目名称:qc-framework,代码行数:11,代码来源:QCacheProviderMemcache.class.php

示例9: get_cache

function get_cache($key)
{
    //获取缓存
    $m = new Memcache();
    $m->connect(Cache_IP, Cache_Port);
    return $m->get($key);
}
开发者ID:Moearly,项目名称:myshop,代码行数:7,代码来源:functions.php

示例10: getStatsFromCache

function getStatsFromCache($type = 'sizes', $slabib = null, $limit = 100)
{
    $ini = parse_ini_file('scielo.def', true);
    $memcache = new Memcache();
    $memcache->connect($ini['CACHE']['SERVER_CACHE'], $ini['CACHE']['SERVER_PORT_CACHE']);
    if ($slabib != null) {
        $arr = $memcache->getExtendedStats($type, $slabid, $limit);
    } else {
        $arr = $memcache->getExtendedStats($type);
    }
    $saida = '';
    $arr = array_pop($arr);
    $saida .= '<table border="1">';
    foreach ($arr as $key => $value) {
        $saida .= '<tr>';
        $saida .= '<td>' . $key . '</td>';
        if (is_array($value)) {
            $saida .= '<td><table border="1">';
            foreach ($value as $k => $v) {
                $saida .= '<tr>';
                $saida .= '<td>' . $k . '</td>';
                $saida .= '<td>' . $v . '</td>';
                $saida .= '</tr>';
            }
            $saida .= '</table></td>';
        } else {
            $saida .= '<td>' . $value . '</td>';
        }
        $saida .= '</tr>';
    }
    $saida .= '</table>';
    $memcache->close();
    return $saida;
}
开发者ID:robertatakenaka,项目名称:Proceedings,代码行数:34,代码来源:cache.php

示例11: testSetInstanceSuccess

 public function testSetInstanceSuccess()
 {
     $driver = $this->getDriver();
     $client = new \Memcache();
     $client->addserver('localhost');
     $driver->setInstance($client);
 }
开发者ID:noikiy,项目名称:owl,代码行数:7,代码来源:MemcacheTest.php

示例12: init

 public function init()
 {
     $bootstrapOptions = $this->getBootstrap()->getOptions();
     $options = $this->getOptions();
     $memcache = null;
     $doctrineConfig = new \Doctrine\ORM\Configuration();
     if (!empty($options['options']['metadataCache'])) {
         $metaCache = new $options['options']['metadataCache']();
         if ($metaCache instanceof \Doctrine\Common\Cache\MemcacheCache) {
             $memcache = new Memcache();
             $memcache->connect('localhost', 11211);
             $metaCache->setMemcache($memcache);
         }
         $doctrineConfig->setMetadataCacheImpl($metaCache);
     }
     if (!empty($options['options']['queryCache'])) {
         $queryCache = new $options['options']['queryCache']();
         if ($queryCache instanceof \Doctrine\Common\Cache\MemcacheCache) {
             if (is_null($memcache)) {
                 $memcache = new Memcache();
                 $memcache->connect('localhost', 11211);
             }
             $queryCache->setMemcache($memcache);
         }
         $doctrineConfig->setQueryCacheImpl($queryCache);
     }
     $driverImpl = $doctrineConfig->newDefaultAnnotationDriver(array($options['paths']['entities']));
     $doctrineConfig->setMetadataDriverImpl($driverImpl);
     //$doctrineConfig->setEntityNamespaces(
     //    $options['entitiesNamespaces']);
     $doctrineConfig->setProxyDir($options['paths']['proxies']);
     $doctrineConfig->setProxyNamespace($options['options']['proxiesNamespace']);
     $this->getBootstrap()->em = \Doctrine\ORM\EntityManager::create($options['connections']['doctrine'], $doctrineConfig);
     return $this->getBootstrap()->em;
 }
开发者ID:rehoutm,项目名称:Zend_Db-vs.-Doctrine-2,代码行数:35,代码来源:Doctrine2.php

示例13: getCacheProvider

 /**
  * @return  CacheProvider
  */
 protected function getCacheProvider()
 {
     $config = $this->getConfig()->get('orm.cache');
     switch ($config['provider']) {
         case 'array':
             return new ArrayCache();
         case 'filesystem':
             return new FilesystemCache($config[$config['provider']]['directory'], $config[$config['provider']]['extension']);
         case 'redis':
             $redis = new \Redis();
             $redis->connect($config[$config['provider']]['host'], $config[$config['provider']]['port']);
             $redis->select($config[$config['provider']]['dbindex']);
             $cache = new RedisCache();
             $cache->setRedis($redis);
             return $cache;
         case 'memcached':
             $memcache = new \Memcache();
             $memcache->connect($config[$config['provider']]['host'], $config[$config['provider']]['port'], $config[$config['provider']]['weight']);
             $cache = new MemcacheCache();
             $cache->setMemcache($memcache);
             return $cache;
         default:
             return null;
     }
 }
开发者ID:ntd1712,项目名称:common,代码行数:28,代码来源:EntityManagerFactory.php

示例14: elggcache_cacheinit

function elggcache_cacheinit()
{
    global $CFG, $messages;
    //memcache_debug(true);
    if (!empty($CFG->elggcache_enabled)) {
        static $memcacheconn;
        //var_dump($memcacheconn);
        if (!isset($memcacheconn)) {
            if (!empty($CFG->elggcache_debug)) {
                $messages[] = 'connecting to memcache<br />';
            }
            $memcacheconn = new Memcache();
            $memcacheconn->pconnect($CFG->elggcache_memcache_host, $CFG->elggcache_memcache_port);
        }
        //var_dump($memcacheconn);
        if (empty($memcacheconn) || !is_resource($memcacheconn->connection)) {
            $CFG->elggcache_enabled = false;
            if (!empty($CFG->elggcache_debug)) {
                $messages[] = 'failed connect to memcache<br />';
            }
        }
    } else {
        $memcacheconn = false;
    }
    //$stats = $memcacheconn->getExtendedStats();
    //var_dump($stats);
    //var_dump($memcacheconn);
    return $memcacheconn;
}
开发者ID:BackupTheBerlios,项目名称:tulipan-svn,代码行数:29,代码来源:engine.memcache.php

示例15: register

 /**
  * Register the service provider.
  *
  * @return void
  */
 public function register()
 {
     $this->package('opensolutions/doctrine2bridge', 'doctrine2bridge');
     $this->app['config']->package('opensolutions/doctrine2bridge', __DIR__ . '/../config');
     $this->app->singleton('d2cachebridge', function ($app) {
         $cacheClass = "\\Doctrine\\Common\\Cache\\" . \Config::get('doctrine2bridge::cache.type');
         if (!class_exists($cacheClass)) {
             throw new Exception\ImplementationNotFound($cacheClass);
         }
         $cache = new $cacheClass();
         if (\Config::has('doctrine2bridge::cache.namespace')) {
             $cache->setNamespace(\Config::get('doctrine2bridge::cache.namespace'));
         }
         switch (\Config::get('doctrine2bridge::cache.type')) {
             case 'MemcacheCache':
                 $memcache = new \Memcache();
                 if (!\Config::has('doctrine2bridge::cache.memcache.servers') || !count(\Config::get('doctrine2bridge::cache.memcache.servers'))) {
                     throw new Exception\Configuration('No servers defined for Doctrine2Bridge\\Doctrine2CacheBridgeServiceProvider - Memcache');
                 }
                 foreach (\Config::get('doctrine2bridge::cache.memcache.servers') as $server) {
                     $memcache->addServer($server['host'], isset($server['port']) ? $server['port'] : 11211, isset($server['persistent']) ? $server['persistent'] : false, isset($server['weight']) ? $server['weight'] : 1, isset($server['timeout']) ? $server['timeout'] : 1, isset($server['retry_int']) ? $server['retry_int'] : 15);
                     $cache->setMemcache($memcache);
                 }
                 break;
         }
         return $cache;
     });
     // Shortcut so developers don't need to add an Alias in app/config/app.php
     \App::booting(function () {
         $loader = \Illuminate\Foundation\AliasLoader::getInstance();
         $loader->alias('D2Cache', 'Doctrine2Bridge\\Support\\Facades\\Doctrine2Cache');
     });
 }
开发者ID:opensolutions,项目名称:doctrine2bridge,代码行数:38,代码来源:Doctrine2CacheBridgeServiceProvider.php


注:本文中的Memcache类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。