Логотип   Простое и понятное управление
  Уникальные возможности по настройке
  Open Server скачали уже 1 022 114 раз!

Форум

Добро пожаловать, Гость!

Class 'Memcached' not found

Обсуждение проблем в работе программного комплекса
Ashterix
Сообщения: 3
C нами: 1 год 10 мес
Откуда: Одесса

Непрочитанное сообщение Ashterix » 07 сен 2015, 09:38

Здравствуйте.
Искал на форуме и в интернетах, но не нашёл подобной темы. Если вопрос уже обсуждался, прошу направить в нужную тему.

Строка
<?php
$memcached = new Memcached();

вызывает ошибку
Fatal error: Class 'Memcached' not found in ...

Windows7 Professional SP1
Версия OpenSerder 5.2.2
Сборка
PHP-5.6
Apache-2.4
Memcached-1.2 (пробовал и Memcached-1.4)

Сервер запускается без проблем.
memcached.exe появляется в процессах.
phpinfo() показывает, что путь c:\openserver\modules\memcached\Memcached-1.2; прописан в переменных окружения, но больше никаких упоминаний "memcached" не встречается, но есть целый блок настроек "memcache". На сколько я понимаю, это разные вещи.

Почему в настройках openserver указан модуль Memcached, а по факту получается Memcache без d?
Существует ли какой-то костыль, чтобы в итоге получить memcached?

Аватара пользователя
Максим
Сообщения: 4878
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 07 сен 2015, 09:57

Ashterix, для PHP существует два расширения: Memcache и Memcached. В состав Open Server включено расширение Memcache. Вы же пытаетесь вызвать Memcached, которого нет. PHP код для работы с расширениями немного отличается, например:

$memcache = new Memcache;
$memcacheD = new Memcached;
$memcache->addServer($host);
$memcacheD->addServers($servers);


Ashterix писал(а):Почему в настройках openserver указан модуль Memcached, а по факту получается Memcache без d?


Модуль не имеет никакого отношения к PHP расширениям. Это разные вещи.

Ashterix писал(а):Существует ли какой-то костыль, чтобы в итоге получить memcached?


Насколько я знаю memcached расширения для Windows нет.

Ashterix
Сообщения: 3
C нами: 1 год 10 мес
Откуда: Одесса

Непрочитанное сообщение Ashterix » 07 сен 2015, 10:29

Максим, спасибо за быстрый ответ.
Максим писал(а):Модуль не имеет никакого отношения к PHP расширениям. Это разные вещи.

Понятно.
Максим писал(а):Насколько я знаю memcached расширения для Windows нет.

Знал об этом. Но надеялся, что может информация устарела и что-то появилось.

Максим писал(а): PHP код для работы с расширениями немного отличается, например:

$memcache = new Memcache;
$memcacheD = new Memcached;
$memcache->addServer($host);
$memcacheD->addServers($servers);
.

Спасибо, я в курсе. Просто в наследство достался проект в котором используется именно memcached. Видимо придётся vagrant использовать.

S1LVER
Сообщения: 9
C нами: 1 год 11 мес

Непрочитанное сообщение S1LVER » 11 ноя 2016, 13:53

Доброго времени суток!
Прочитал тему, вроде бы ничего нового, про это знаю. Но... если указывать Memcache - то все равно получаю ошибку о не установленном расширении.

Windows 10x64
Open Server 5.2.5x64
PHP 7
Memcached - 1.4

Аватара пользователя
Максим
Сообщения: 4878
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 11 ноя 2016, 17:18

В комплекте с PHP7 нет этого расширения, поэтому неудивительно.


Вернуться в «Ошибки Open Server»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость