2016-09-13 4 views
0

Я недавно обновил сервер до PHP7 (L5.2) и имел проблемы с Memcache. Сообщение об ошибке: Class Memcache does not exist. Я уже установил Memcached PECL, но похоже, что PHP7 не подходит. Какое лучшее альтернативное решение для его работы?Laravel 5.2 - Memcache с PHP7 - класс Memcache не существует

+0

Какова Ваша информация о хозяине? Оперативная система и т. Д.? –

ответ

1

На данный момент, когда я устанавливал memcached для PHP7, он не был закончен как стабильный для PHP7. Но вот так, чтобы построить его с помощью команды:

yum install libmemcached-devel 
wget https://github.com/php-memcached-dev/php-memcached/archive/php7.zip -O php-memcached-php7.zip 
unzip php-memcached-php7.zip 
cd php-memcached-php7 
phpize 
./configure 
make 
make install 
echo 'extension=memcached.so' >> /etc/php.ini 

Этот скрипт для CentOS 7, но, как правило, он должен работать везде, с незначительными изменениями

+0

Спасибо за ответ. Я пытаюсь выполнить шаги и получить следующую ошибку в Ubuntu 14.04. Не могли бы вы помочь мне понять, что здесь происходит? 'sudo yum install libmemcached-devel Нет активных репозиториев. Запустите «yum repolist all», чтобы увидеть репозиции, которые у вас есть. Вы можете включить РЕПО с нями-конфиг-менеджер --enable Sudo ня установить libmemcached-разви возвратил код выхода 1 Не удалось выполнить действие: Суд ня установить libmemcached-devel' –

+0

Это потому, что в Ubuntu другой инсталлятор используется: кв. Например: sudo apt-get install libmemcached-dev – Viktor

+0

My bad! Я сделал с установкой, и все прошло хорошо. 'extension = memcached.so' добавляется в файл php.ini. Я пытаюсь использовать класс 'Memcache' по его пространству имен' use Memcache', но он говорит 'невозможно найти класс'. Он отлично работает в PHP5. Он должен работать так же, как работает «Memcached PECL»? –

0

Для других выглядывает, которые приходят по этому вопросу, Я отправляю способ, которым я могу это сделать. Возможно, вам потребуются некоторые настройки в соответствии с вашей средой, но надеемся, что это поможет кому-то. Я в Ubuntu 14.04.

sudo apt-get install libmemcached-dev 
    wget https://github.com/php-memcached-dev/php-memcached/archive/php7.zip -O php-memcached-php7.zip 
    unzip php-memcached-php7.zip 
    cd php-memcached-php7 && phpize && ./configure --disable-memcached-sasl && make && sudo make install 

    git clone https://github.com/websupport-sk/pecl-memcache.git 
    cd pecl-memcache && phpize && ./configure --disable-memcache-sasl && make && sudo make install 
    sudo echo 'extension=memcached.so' >> /path/to/php.ini 
    sudo echo 'extension=memcache.so' >> /path/to/php.ini 
Смежные вопросы