我在Laravel 5.2中收到错误"Class'Predis\Client'未找到"

one*_*ler 38 redis laravel composer-php laravel-5 laravel-5.2

我想在laravel 5.2中使用Redis但是,我收到错误这样的类'Predis\Client'找不到,我怎么能解决它.

Abh*_*hek 65

  1. 首先将REDIS下载到您的系统(如果您尚未安装它).
  2. 转到已下载redis的文件夹并运行以下命令:

    cd your-redis-folder-name
    make
    
    Run Code Online (Sandbox Code Playgroud)
  3. 转到项目目录并安装composer:

    composer require predis/predis

  4. 转到.env文件并添加队列驱动程序:

    QUEUE_DRIVER=redis
    
    Run Code Online (Sandbox Code Playgroud)
  5. 用于Mail::queue()通过队列发送邮件.见文件.
  6. 在您的终端运行中:

    php artisan queue:listen 
    
    Run Code Online (Sandbox Code Playgroud)

    发送.


Kam*_*ski 29

在项目文件夹的控制台中写入:

composer require predis/predis
Run Code Online (Sandbox Code Playgroud)

就这样.


Mar*_*łek 7

您需要添加predis/prediscomposer.json您的项目.参考:https://laravel.com/docs/5.2/redis#introduction


Kar*_*ner 5

顺便说一句,如果你使用 Laravel Workers 和 ubuntu Supervisor,即使你这样做了,这个错误也不会消失

composer require predis/predis
Run Code Online (Sandbox Code Playgroud)

然后记住孩子们,一旦你启动它,主管就会缓存你所有的 php 代码。因此,在启动主管工作人员(https://laravel.com/docs/5.6/queues#supervisor-configuration)之后安装 predis 不会产生任何影响,除非您这样做

sudo supervisorctl stop laravel-worker:*
Run Code Online (Sandbox Code Playgroud)

然后重新开始

sudo supervisorctl start laravel-worker:*
Run Code Online (Sandbox Code Playgroud)

去年,我在 3 个项目上为此停留了一两个小时。