Home > Backend Development > PHP Tutorial > Detailed explanation of the steps to use Memcached to cache data in the ThinkPHP framework

Detailed explanation of the steps to use Memcached to cache data in the ThinkPHP framework

php中世界最好的语言
Release: 2023-03-26 09:44:02
Original
1558 people have browsed it

This time I will bring you a detailed explanation of the steps to use Memcachedcaching data in ThinkPHP framework, and notes on using Memcached to cache data in ThinkPHP framework What are the matters ? Below are actual cases, let’s take a look at them.

ThinkPHP uses files to cache data by default, and supports other caching methods such as Memcache. There are two PHP extensions: Memcache and Memcached. Memcahe has official instructions, mainly talking about Memcached.

Compared with PHP Memcache, php Memcached is an extension of libmemcached based on native c. It is more complete and is recommended to be replaced by php memcached.

The Memcached driver has been built-in since version 3.2.2 (

ThinkPHP/Library/Think/Cache/Driver/Memcached.class.php), but the usage is not explained in the document. By viewing the source code Configured and tested successfully.

There is a bug that has not been fixed yet, that is, the expiration time is 0. In theory, it should be permanently cached, but if it is not processed in the driver, it will expire immediately. The set method is modified as follows

 public function set($name, $value, $expire = null) {
  N('cache_write',1);
  if(is_null($expire)) {
   $expire = $this->options['expire'];
  }
  $name = $this->options['prefix'].$name;
  if (empty($expire))
   $time = 0;
  else
   $time = time() + $expire;
  if($this->handler->set($name, $value, $time)) {
   if($this->options['length']>0) {
    // 记录缓存队列
    $this->queue($name);
   }
   return true;
  }
  return false;
 }
Copy after login
Add

//缓存配置
 'DATA_CACHE_TYPE' => 'Memcached',
 'MEMCACHED_SERVER' => array(
  array('127.0.0.1', 11211, 0)
 ),
Copy after login
in the configuration fileconfig.php. The driver is called:

Memcached::addServers(array)
Copy after login
You can add multiple cache servers

There is also a configuration item It is MEMCACHED_LIB, and the call is:

Memcached::setOptions(array)
Copy after login
I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website!

Recommended reading:

Detailed explanation of the use of PHP status mode

Detailed explanation of the steps for PHP to dynamically obtain function parameters

The above is the detailed content of Detailed explanation of the steps to use Memcached to cache data in the ThinkPHP framework. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template