您可以同时激活两个扩展。两者都是连接到 Memcached服务器PECL Memcache
的PECL Memcached
PHP客户端。
关于利弊
如前所述,Memcached 建立在由 memcached 服务器团队维护的libmemcached之上。人们说它更好,但我无法验证这一点。
PECL memcache 仍然具有更好的 PHP 会话支持。
我在这里找到了(有点旧,但大部分仍然有效)比较表
编辑
PHP 正在使用任一扩展连接到 Memcached 服务器。以下是一些使用示例
PHP中的PECL Memcached使用示例
PECL Memcached 类参考
// create PECL memcached Object
$m = new Memcached();
// add a server, connection is established lazily as far as I know
$m->addServer( 'localhost', 11211 );
// set values, those are written into your server's memory using the memcached server
$m->set( 'integer', 1 );
$m->set( 'intIncrement', 1 );
$m->set( 'intDecrement', 1 );
$m->set( 'string', 'I am a string' );
$m->set( 'array', array( 'a', 'b', 'c' ) );
// increment
$m->increment( 'intIncrement' );
// decrement
$m->decrement( 'intDecrement' );
// get values again
var_dump ( $m->get( 'integer' ) );
var_dump ( $m->get( 'intIncrement' ) );
var_dump ( $m->get( 'intDecrement' ) );
var_dump ( $m->get( 'string' ) );
var_dump ( $m->get( 'array' ) );
// delete values
$m->delete( 'integer' );
$m->delete( 'intIncrement' );
$m->delete( 'intDecrement' );
$m->delete( 'string' );
$m->delete( 'array' );
// close connection
$m->close();
PHP中的PECL Memcache使用示例
PECL Memcache 类参考
这可以在同一个 PHP 脚本中!
// create PECL memcache object
$m = new Memcache;
// connect to the memcached server
$m->connect('localhost', 11211);
// set values
$m->set( 'integer', 1 );
$m->set( 'intIncrement', 1 );
$m->set( 'intDecrement', 1 );
$m->set( 'string', 'I am a string' );
$m->set( 'array', array( 'a', 'b', 'c' ) );
// increment
$m->increment( 'intIncrement' );
// decrement
$m->decrement( 'intDecrement' );
// get values again
var_dump ( $m->get( 'integer' ) );
var_dump ( $m->get( 'intIncrement' ) );
var_dump ( $m->get( 'intDecrement' ) );
var_dump ( $m->get( 'string' ) );
var_dump ( $m->get( 'array' ) );
// delete values
$m->delete( 'integer' );
$m->delete( 'intIncrement' );
$m->delete( 'intDecrement' );
$m->delete( 'string' );
$m->delete( 'array' );
// close connection
$m->close();
您还可以将对象存储到 memcached 中,查看这篇关于对象序列化和魔术类方法 __sleep
的文章以及__wakeup()
PHP
如您所见,PECL Memcached 和 Memcache 这两个客户端的基本用法非常相似。