search
HomeBackend DevelopmentPHP7How to install memcache and memcached extensions under PHP7

Memcache and memcached are both PHP extensions of the Memcached server. Among them, memcache appeared earlier than memcached, so some old code may still use memcache extension. You can install one according to your needs. Here are the installation methods for both.

How to install memcache and memcached extensions under PHP7

Memcached is a high-performance distributed memory cache server, and PHP memcache and memcached are both PHP extensions of the Memcached server. Among them, memcache appeared earlier than memcached, so some old code may still use memcache extension. Memcached appeared later, and most frameworks support memcached, which is now relatively popular.

Installation dependencies

The first is memcached. This extension requires the libmemcached client library, otherwise the following error will occur

checking for libmemcached location... configure: error: memcached support requires libmemcached. Use –with-libmemcached-dir=

to specify the prefix where libmemcached headers and library are located
ERROR: `/var/tmp/memcached/configure –with-libmemcached-dir=no' failed

Can be installed by the following method

[root@lnmp lnmp.cn]# yum install libmemcached libmemcached-devel

And memcache The module uses the function zlib to support data compression, so installing this module requires installing the Zlib module. Otherwise, the following error will occur:

checking for the location of zlib… configure: error: memcache support requires ZLIB. Use –with-zlib-dir=

to specify prefix where ZLIB include and library are located

ERROR: `/var/tmp/memcache/configure –enable-memcache-session=No' failed

You can use yum to install it as follows:

[root@lnmp lnmp.cn]# yum install zlib zlib-devel

Install memcached extension

Try to install with PECL, the address of memcached on PECL Yes:

https://pecl.php.net/package/memcached

[root@lnmp lnmp.cn]# pecl install memcached

pecl/ memcached requires PHP (version >= 5.2.0, version

No valid packages found

install failed

[root@localhost vagrant]

#The prompt is obvious, the memcached extension on PECL only supports versions above PHP 5.2 and below 6.00. Not updated to PHP7 yet. But fortunately, you can find their link on github on PECL's memcached page:

https://github.com/php-memcached-dev/php-memcached

here The code already has a branch that supports PHP7. Here, download the source code to the ext directory of the PHP source code:

[root@lnmp lnmp.cn]# cd /usr/local/src/php-7.0.8/ext/

[root@lnmp ext]# git clone https://github.com/php-memcached-dev/php-memcached memcached

[root@lnmp ext]# cd memcached/

checkout to php7 branch:

[root@lnmp memcached]# git checkout php7

Branch php7 set up to track remote branch php7 from origin.

Switched to a new branch 'php7'

[root@lnmp memcached]

#Use phpize to install, my PHP is installed under /usr/local/php7

[root@lnmp memcached]# /usr/local/php7/bin/phpize

[root@lnmp memcached]# ./configure –with-php-config=/usr /local/php7/bin/php-config

Then make and make install

[root@lnmp memcached]# make

[root@lnmp memcached]# make install

Installing shared extensions: /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/

[root@lnmp memcached]

#You can see that memcached has been installed and the expansion file has been placed in the prompted directory:

[root@lnmp memcached] # ls /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/

memcached.so opcache.a opcache.so

[root@lnmp memcached]

#The last step is to introduce memcached.so in php.ini

[root@lnmp memcached]# vim /usr/local/php7/lib/php .ini

Add:

extension=memcached.so

Remember to reload php-fpm to take effect

[root@lnmp memcached]# systemctl reload php-fpm

Open the phpinfo page and you have seen that the memcached extension has been successfully installed.

How to install memcache and memcached extensions under PHP7


Install memcache extension

Also try to install using PECL:

[root@lnmp memcached]# pecl install memcache

But it also failed

/tmp/pear/temp/memcache/memcache.c:40:40: fatal error: ext/standard/php_smart_str. h: No such file or directory

#include "ext/standard/php_smart_str.h"

                                                                         ##make: *** [memcache.lo] Error 1

ERROR: `make' failed

It seems that the reason is also that PECL does not support the installation of memcache extension under PHP7,

https://pecl.php.net/package /memcache

has not been updated since 2013. If this road fails, we can only find another way, and try our luck on github. Search pecl memcache

https://github.com/search?utf8=✓&q=pecl memcache&type=Repositories&ref=searchresults

The first one (https://github.com/websupport -sk/pecl-memcache) is what you want, and the code already supports PHP7. Download the code and compile it immediately:

[root@lnmp memcached]# cd ../

[root@lnmp ext]# git clone https://github.com/websupport-sk/pecl-memcache memcache

[root@lnmp ext]# cd memcache

Use phpize installation, the steps are exactly the same as memcached

[root@lnmp memcache]# /usr/local/php7/bin/phpize

[root@lnmp memcache]# ./configure – with-php-config=/usr/local/php7/bin/php-config

[root@lnmp memcache]# make

[root@lnmp memcache]# make install

Installing shared extensions: /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/

[root@lnmp memcache]

#Similar to memcached, introduce memcache.so in php.ini

[root@lnmp memcache]# vim /usr/local/php7/lib/php.ini

Join:

extension=memcache.so

Finally reload php-fpm

[root@lnmp memcache]# systemctl reload php-fpm

You're done, you can see on the phpinfo page that memcahce and memchaced have been successfully installed

Recommended learning:

php Video tutorialHow to install memcache and memcached extensions under PHP7

The above is the detailed content of How to install memcache and memcached extensions under PHP7. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:CSDN. If there is any infringement, please contact admin@php.cn delete

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment