PHP operation Memcache Cache method sharing, Memcache cache _php Tutorial

Source: Internet
Author: User

PHP operation Memcache Cache method sharing, Memcache cache


The premise of using Memcache is to configure the Memcahche environment on the service side first! Confirm that the MEMCAHCE can be properly connected and can be used in the program!

<?php/** * Memcache Cache operation * @author HXM * @version 1.0 * @since 2015.05.04 */class Mcache extends Object implements cache  face{private $mem = null;//mem Object Private $sId = 1; Servier Service ID/** * Initialize memcache * * @return Object */Public Function __construct () {if (!class_exists (    ' Memcache ') {throw new qexception (' PHP extension does not exist:memcache ');  } $this->mem = new Memcache (); }/** * Link MEMCAHCE service * * @access private * @param string $key keyword * @param string $value Cache contents * @return    Array */Private Function Connect ($sid) {$file = $this->cachefile ();    Require $file;    if (! isset ($cache)) {throw new qexception (' cache config file does not exist '. $file);    } $server = $cache [$this->cacheid]; $sid = Isset ($sid) = = 0?    $this->sid: $sid;//memcache Service Select if (! $server [$sid]) {throw new Qexception (' Cache server configuration file for current operation does not exist ');    } $host = $server [$sid] [' Host '];    $port = $server [$sid] [' Port ']; try {     $this->mem->connect ($host, $port);    } catch (Exception $e) {exit (' Memecache connection failed, error message: '. $e->getmessage ());    }}/** * Write Cache * * @access private * @param string $key keyword * @param string $value Cache contents * @return Array    */Public function set ($key, $value, $sid, $expire = 0) {$data = $this->get ($key, $SID);//If a key value already exists    if ($data) {return $this->mem->set ($key, $value, memcache_compressed, $expire);    } else {return $this->mem->add ($key, $value, memcache_compressed, $expire); }}/** * Read Cache * * @access private * @param string $key keyword * @param int $sid Select memcache Server * @ret    Urn Array */public function get ($key, $sid) {$this->connect ($SID);  return $this->mem->get ($key); }/** * Clean (delete) All elements that have been stored * * @access Private * @return Array */Public function flush () {$this->con    Nect ();  return $this->mem->flush (); }  /**   *Delete Cache * * @access private * @param string $key keyword * @param int $sid Select memcache Server * @return Array */P    ublic function Remove ($key, $sid) {$this->connect ();  return $this->mem->delete ($key); }/** * destructor * Last Close memcache */Public Function __destruct () {/*if (! $this->mem) {$this->mem    ->close (); }*/  }}

The above mentioned is the whole content of this article, I hope you can like.

http://www.bkjia.com/PHPjc/1011245.html www.bkjia.com true http://www.bkjia.com/PHPjc/1011245.html techarticle PHP operation Memcache Cache method sharing, Memcache cache use Memcache premise is the need to configure the server first Memcahche environment! Confirm that the MEMCAHCE can be connected properly after the process ...

  • Contact Us

    The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

    If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.