У кого-нибудь есть memcached для работы над php7-боксом Laravel Homestead?

Я загрузил Laravel/Lumen на новую коробку php7 Homestead и столкнулся с этой ошибкой:

FatalThrowableError in MemcachedConnector.php line 51:
Fatal error: Class 'Memcached' not found

Делать phpinfo(); показывает, что нет расширения memcached, но sudo service memcached status говорит, что memcached запущен. Кажется, здесь есть ветка php7 для memcached: https://github.com/php-memcached-dev/php-memcached/tree/php7

Кто-нибудь может подсказать мне, как заставить его работать в новой php7 Homestead VM?

РЕДАКТИРОВАТЬ: я только что видел в документации по установке усадьбы, что он говорит "Memcached (только PHP 5.x)". До сих пор остается вопрос, как заставить его работать.

2 ответа

Решение

Работа над php-memcached для PHP7 еще не завершена, не все тесты пройдены; Я думаю, вы можете использовать все, кроме сериализации JSON.

В PHP7 нет поддержки pecl, поэтому сейчас вам нужно установить расширения вручную, например так:

git clone https://github.com/php-memcached-dev/php-memcached
cd php-memcached
git checkout php7
phpize
./configure
make
sudo make install

Вы должны убедиться, что phpize это версия PHP7. Кроме того, если php в вашем PATH нет PHP7, тогда php-config в вашем PATH тоже нет, в этом случае вы должны пройти --with-php-config=/absolute/path/to/php7-config в ./configure,

У меня такая же проблема, но на Windows при использовании XAMPP, Похоже на то memcached сейчас работает только с PHP 5+.

Проблема для пользователей Windows состоит в том, чтобы найти правильный файл.dll с именем php_memcache.dll (платформы x86/x64).

Я часами искал решение, но ничего не нашел. Очень свежее описание, как использовать memcached это здесь:

КАК: установить Memcache на XAMPP (Windows 7/8/10)

Нам все еще нужно ждать реализации PHP7+.

Другие вопросы по тегам