类Memcached未找到流明5.4

时间:2017-02-03 12:53:01

标签: php lumen artisan

尝试运行artisan命令时出现以下错误

[Symfony\Component\Debug\Exception\FatalThrowableError]
Class 'Memcached' not found

我最近一直在研究另一个使用Lumen 5.3的项目,并且运行artisan命令没有问题。这两个项目都在同一个虚拟盒子上,除了Lumen版本之外,服务器设置没有区别。

我已经检查过Memcached正在运行且没有问题。

我尝试过composer dump-autoload,删除了vendor文件夹并重新安装,但这些都没有任何区别。

如果可能的话,我宁愿不回到5.3。

有没有办法解决这个问题?

5 个答案:

答案 0 :(得分:7)

有同样的问题。 检查您是否为您正在使用的php版本安装了memcached扩展,并检查它是否在php.ini文件中正确配置(它可能在错误的目录中查找)。

答案 1 :(得分:4)

看起来您的memcahed未安装或未正确配置。

快速解决方案,

使用文件缓存驱动程序而不是memcached

CACHE_DRIVER=file

答案 2 :(得分:2)

Ubuntu 16.04 LTS,试试这个:

sudo apt-get install php-memcached

答案 3 :(得分:1)

只是添加了os特定的响应。这是使用OS / X和自制软件的那个。

首先,您必须确定您在本地使用的PHP版本。

$ php -v                
PHP 7.0.19 (cli) (built: May 21 2017 11:56:11) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies

$ brew search memcached  
homebrew/php/php53-memcached            homebrew/php/php70-memcached 
homebrew/php/php54-memcached            homebrew/php/php71-memcached
homebrew/php/php55-memcached            libmemcached ✔
homebrew/php/php56-memcached            memcached ✔

由于我正在运行PHP 7.0,我选择安装homebrew / php / php70-memcached

$ brew install homebrew/php/php70-memcached

如果您没有安装自制软件,请转至https://brew.sh/并安装它以使用这些说明。这是我上次使用它时的命令。

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

完成所有操作后,我通过清除缓存进行测试。

$ php artisan cache:clear
Cache cleared successfully.
$

干杯,这对我来说是为了当地的发展。

答案 4 :(得分:0)

如果您使用的是Mac OSX,则需要通过Homebrew安装Memcached及其PHP依赖项。

brew update
brew doctor
brew install memcached

然后检查您的PHP版本并为Memcached安装相关的PHP挂钩。

php -v

在我的情况下......

  

PHP 7.1.4(cli)(建于2017年4月14日15:02:16)(NTS)   
版权所有(c)1997-2017 PHP小组   
Zend Engine v3.1.0,版权所有(c)1998-2017 Zend Technologies

所以我用过:

brew install php71-memcached

但您可以使用

查找所需的版本
brew search memcached

执行这些步骤后,您可能会收到新错误

  

未添加任何Memcached服务器。

点燃它
brew services restart memcached

完成!