CakeFest 2024: The Official CakePHP Conference

インストール手順

この PECL 拡張モジュールをインストールする方法は、 マニュアルの PECL 拡張モジュールのインストール という章にあります。 新規リリース・ダウンロード・ソースファイル・管理者情報・CHANGELOG といった関連する情報については、次の場所にあります。 » https://pecl.php.net/package/memcached.

libmemcached のインストール先が標準の場所とは異なる場合は --with-libmemcached-dir=DIR スイッチを使用します。 ここで、DIR は libmemcached のインストールプレフィックスを表します。 このディレクトリ内に include/libmemcached/memcached.h がなければなりません。

圧縮をサポートするには Zlib が必要です。Zlib のインストール先が標準の場所とは異なる場合は、--with-zlib-dir=DIR スイッチを使用します。 ここで、DIR は Zlib のインストールプレフィックスを表します。

セッションハンドラのサポートはデフォルトで有効となります。これを無効にするには --disable-memcached-session スイッチを使用します。

SASL 認証のサポートはデフォルトで無効になっています。これを有効にするには --enable-memcached-sasl スイッチを使用します。 このスイッチを使うには、libsasl2 がインストールされていて、 かつ libmemcached のビルド時に SASL のサポートを有効にしておく必要があります。

add a note

User Contributed Notes 5 notes

up
99
qeremy [at] gmail [dot] com
12 years ago
Do not lose your time to install it on Ubuntu just trying "sudo apt-get install php5-memcached". There is something you need to do that sure installing memcached. Anyway...

Step 1.
$ sudo apt-get install memcached
Step 2.
$ sudo apt-get install php5-memcached
Step 3.
$ sudo /etc/init.d/apache2 restart

Ready!

What about some test?

<?php
error_reporting
(E_ALL & ~E_NOTICE);

$mc = new Memcached();
$mc->addServer("localhost", 11211);

$mc->set("foo", "Hello!");
$mc->set("bar", "Memcached...");

$arr = array(
$mc->get("foo"),
$mc->get("bar")
);
var_dump($arr);
?>

Hoping to help someone.
~Kerem
up
11
info at kgsw dot de
4 years ago
For PHP 7 seems to work:

$ sudo apt-get install memcached
$ sudo apt-get install php-memcached
$ sudo apachectl graceful

## php 7.2.19 / ubuntu 18.04.1

$mc = new Memcached();
$mc->addServer("localhost", 11211);
...
up
6
petermiller1986 att gmail dotttttttt com
12 years ago
i'm planning on using membase for my website and i was really struggling to install the memcashed php client on ubuntu with pear, but actually there is an easier way:

$ sudo apt-get install php5-memcached

you dont even need to install the membase server first - this can be done afterwards. hope this helps someone!
up
0
Clint Priest
14 years ago
If your server has --enable-json=shared as mine did, this extension requires you to have extension=json.so to load properly.
up
-14
gpuk at dasserver dot com
14 years ago
At present memcached-1.0.0 does not compile with libmemcached-0.38. This is apparently due to libmemcached chaning the API.

For evidence, see this bug: http://pecl.php.net/bugs/bug.php?id=17070

Note: I am encountering the same 'memcached_st' has no member named 'hash' error on a Debian lenny amd_64 box.
To Top