我在使用时将两个模块列为已安装/配置:
php -m
或者如果我使用:
php -i
但是当我使用时:
$m = new Memcache;
// or
$m = new Memcache();
// or
$m = new Memcached();
//or
$m = new Memcached;
我收到以下错误:
Fatal error: Class 'Memcached' not found
我在Mac-OS X(10.5.7)上运行,默认安装apache& PHP.另外,我根据php-memcached库的要求在127.0.0.1:11211和libmemcache上运行memcached作为守护进程运行.我已经重启apache很多次,甚至完成了机器重启.
有谁知道为什么模块/扩展显示在命令行中而不是在我的phpinfo()中?我真的很难过,经过3个小时的谷歌搜索,我准备放弃了.
另外,请注意,我的phpinfo()输出我的ini文件,如下所示,它们都是完全相同的文件:
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /private/etc/php.ini
更新:
Apache无法加载扩展.
[Fri May 14 04:22:26 2010] [warn]
Init: Session Cache is not configured
[hint: SSLSessionCache] PHP Warning:
PHP Startup: Unable to load dynamic
library
‘/usr/lib/php/extensions/no-debug-non-zts-20060613/memcached.so’
– (null) in Unknown on line 0 PHP Warning: PHP Startup: Unable to load
dynamic library
‘/usr/lib/php/extensions/no-debug-non-zts-20060613/memcache.so’
– (null) in Unknown on line 0
有谁知道为什么或如何发生这种情况?上面引用的两个文件都在那里.我应该将此问题移至服务器故障吗?