无法让Memcached在PHP中工作

时间:2011-10-05 17:50:17

标签: php apache memcached

使用PHP memcached类时出现问题。

我正在使用Apache 2.2.16和PHP 5.3.3在Ubuntu 10.10上运行LAMP环境。 我刚刚安装了我认为是memcached的东西,但似乎可能是memcache?

我可以用:

启动一个新的memcache对象
$m = new Memcache;

哪个工作正常。但是当我尝试启动一个memcached对象时

$m = new Memcached();

我收到以下错误

Fatal error: Class 'Memcached' not found

当我运行'ps -A |时grep Memcache'通过控制台,它返回

ben@ben-computer:/tmp$ ps -A | grep memcache
1214 ?        00:00:00 memcached

显示正在运行的memcached进程。 phpinfo()返回memcache版本2.2.6。

但是当我进一步查看etc文件夹时

ben@ben-computer:/etc/default$ cat memcached 
# Set this to no to disable memcached.
ENABLE_MEMCACHED=yes

然后,当我运行php -m时,它返回memcache。

你得到的图片,我不知道为什么memcache正在运行而不是memcached,任何帮助都会很棒。

编辑:

我认为这可能是libmemcached的一个问题。我安装了libmemcached-dev包,但不确定它是否相同?

3 个答案:

答案 0 :(得分:3)

Memcache =班级名称
Memcached =运行类

的守护程序的名称

同样,croncrondmysqlmysqld

答案 1 :(得分:2)

您可以使用two different PHP classes。我推荐memcached超过memcache,因为它更新,支持更多功能。

答案 2 :(得分:1)

memcached扩展不是PHP的标准组件,必须与PECL分开安装。说明在线:

http://php.net/memcached.installation