Ответ 1
В PHP есть два расширения для memcached: memcache "и" memcached".
Похоже, вы пытаетесь использовать один ( "memcache" ), но другой установлен ( "memcached" ).
Я вставлял пример из php.net для использования memcached в php, и я получаю:
Fatal error: Class 'Memcache' not found
У меня это в моем php.ini:
[Memcache]
memcache.hash_strategy = "последовательно"
memcache.max_failover_attemps = 100
memcache.allow_failover = 1
Здесь информация из php -i и php -m соответственно:
php -i | grep -i memcache
Memcached
Поддержка memcached = > включена версия libmemcached = > 0.37
Зарегистрированные save handlers = > файлы user sqlite memcachedphp -m | grep -i memcache
Memcached
Итак, php, похоже, загрузил memcached в качестве модуля, а php-информация говорит, что он загружен и использует v.37. Я еще не пробовал через apache, я только использовал это через кли прямо сейчас. Любые мысли?
В PHP есть два расширения для memcached: memcache "и" memcached".
Похоже, вы пытаетесь использовать один ( "memcache" ), но другой установлен ( "memcached" ).
Несмотря на то, что принятый ответ говорит в комментариях, правильный способ установки "Memcache":
sudo apt-get install php5-memcache
ПРИМЕЧАНИЕ. Memcache & Memcached - это два разных, хотя и связанных с ними, программного обеспечения, которые часто путаются.
EDIT. Поскольку это теперь старый пост, я подумал, что стоит упомянуть, что вы должны заменить php5 на свой номер версии php.
Я нашел решение в этой статье: fooobar.com/questions/76954/...
Я нашел рабочие DLL файлы для PHP 5.4.4
Я не знаю, как они стабильны, но они работают наверняка. Кредиты идут по этой ссылке.
http://x32.elijst.nl/php_memcache-5.4-nts-vc9-x86.zip
http://x32.elijst.nl/php_memcache-5.4-vc9-x86.zip
Это версия 2.2.5.0, которую я заметил после ее компиляции (для PHP 5.4.4).
Обратите внимание, что это не 2.2.6, но работает. Я также отразил их на своем FTP. Зеркальные ссылки:
http://mustafabugra.com/resim/php_memcache-5.4-vc9-x86.zip http://mustafabugra.com/resim/php_memcache-5.4-nts-vc9-x86.zip
Право php_memcache.dll. В моем случае я использовал lib, скомпилированный с vc9 вместо компилятора vc6. В журналах ошибок apatche я получил что-то вроде:
PHP Startup: sqlanywhere: не удается Модуль инициализации Модуль, скомпилированный с build ID = API20090626, TS, VC9 PHP скомпилированный с идентификатором сборки = API20090626, TS, VC6 Эти параметры должны соответствовать
Проверьте, есть ли у вас один журнал и попробуйте загрузить другую dll, скомпилированную с помощью другого компилятора.
Для пользователей OSX:
Для установки Memcached выполните следующую команду:
brew install memcached
Я зашел в wp-config/и удалил object-cache.php и advanced-cache.php, и он отлично работал у меня.