โค้ด memcache สำหรับ phpbb จากเว็บ phpbb.com

PHP Result Center PHP Result Center เป็นหมวด ที่ไว้รวบรวม โปรแกรม Code php Javascript CSS CMS

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41417
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

โค้ด memcache สำหรับ phpbb จากเว็บ phpbb.com

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

โค้ด memcache สำหรับ phpbb จากเว็บ phpbb.com

โค้ด: เลือกทั้งหมด

<?php
/**
*
* @package acm
* @version $Id: acm_memcache.php 10342 2009-12-16 15:48:23Z acydburn $
* @copyright (c) 2005, 2009 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
    exit;
}

// Include the abstract base
if (!class_exists('acm_memory'))
{
    require("{$phpbb_root_path}includes/acm/acm_memory.$phpEx");
}

if (!defined('PHPBB_ACM_MEMCACHE_PORT'))
{
    define('PHPBB_ACM_MEMCACHE_PORT', 11211);
}

if (!defined('PHPBB_ACM_MEMCACHE_COMPRESS'))
{
    define('PHPBB_ACM_MEMCACHE_COMPRESS', false);
}

if (!defined('PHPBB_ACM_MEMCACHE_HOST'))
{
    define('PHPBB_ACM_MEMCACHE_HOST', 'localhost');
}

/**
* ACM for Memcached
* @package acm
*/
class acm extends acm_memory
{
    var $extension = 'memcache';

    var $memcache;
    var $flags = 0;

    function acm()
    {
        // Call the parent constructor
        parent::acm_memory();

        $this->memcache = new Memcache;
        $this->memcache->connect(PHPBB_ACM_MEMCACHE_HOST, PHPBB_ACM_MEMCACHE_PORT);
        $this->flags = (PHPBB_ACM_MEMCACHE_COMPRESS) ? MEMCACHE_COMPRESSED : 0;
    }

    /**
    * Unload the cache resources
    *
    * @return void
    */
    function unload()
    {
        parent::unload();

        $this->memcache->close();
    }

    /**
    * Purge cache data
    *
    * @return void
    */
    function purge()
    {
        $this->memcache->flush();

        parent::purge();
    }

    /**
    * Fetch an item from the cache
    *
    * @access protected
    * @param string $var Cache key
    * @return mixed Cached data
    */
    function _read($var)
    {
        return $this->memcache->get($this->key_prefix . $var);
    }

    /**
    * Store data in the cache
    *
    * @access protected
    * @param string $var Cache key
    * @param mixed $data Data to store
    * @param int $ttl Time-to-live of cached data
    * @return bool True if the operation succeeded
    */
    function _write($var, $data, $ttl = 2592000)
    {
        if (!$this->memcache->replace($this->key_prefix . $var, $data, $this->flags, $ttl))
        {
            return $this->memcache->set($this->key_prefix . $var, $data, $this->flags, $ttl);
        }
        return true;
    }

    /**
    * Remove an item from the cache
    *
    * @access protected
    * @param string $var Cache key
    * @return bool True if the operation succeeded
    */
    function _delete($var)
    {
        return $this->memcache->delete($this->key_prefix . $var);
    }
}

?>
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 65