Latest web development tutorials

PHP 連接Memcached 服務

在前面章節中我們已經介紹瞭如何安裝Memcached 服務,接下來我們為大家介紹PHP 如何使用Memcached 服務。

PHP Memcache 擴展安裝

PHP Memcache擴展包下載地址: http://pecl.php.net/package/memcache ,你可以下載最新穩定包(stable)。

wget http://pecl.php.net/get/memcache-2.2.7.tgz               
tar -zxvf memcache-2.2.7.tgz
cd memcache-2.2.7
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

如果你是PHP7 版本,則需要下載指定分支:

git clone -b php7 https://github.com/php-memcached-dev/php-memcached.git

如果你的系統還未編譯libmemcached,則下載編譯它: https://launchpad.net/libmemcached/+download

注意: /usr/local/php/為php的安裝路徑,需要根據你安裝的實際目錄調整。

安裝成功後會顯示你的memcache.so擴展的位置,比如我的:

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

最後我們需要把這個擴展添加到php中,打開你的php.ini文件在最後添加以下內容:

[Memcache]
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/"
extension = memcache.so

添加完後重新啟動php,我使用的是nginx+php-fpm進程所以命令如下:

kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`

如果是apache的使用以下命令:

/usr/local/apache2/bin/apachectl restart

檢查安裝結果

/usr/local/php/bin/php -m | grep memcache

安裝成功會輸出:memcache。

或者通過瀏覽器訪問phpinfo() 函數來查看,如下圖:

memcache-php

PHP 連接Memcached

<?php
$memcache = new Memcache;             //创建一个memcache对象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache->set('key', 'test');        //设置一个变量到内存中,名称是key 值是test
$get_value = $memcache->get('key');   //从内存中取出key的值
echo $get_value;
?>

更多PHP操作Memcached請參閱: http://php.net/manual/zh/book.memcache.php