Magento 2 is failing to start. The logs show this error:

Deprecated Functionality: implode(): Passing glue string after array is deprecated. Swap the parameters in vendor/colinmollenhour/credis/Client.php on line 1414


Implode with historical parameter order: Passing parameters to implode() in reverse order is deprecated, use implode($glue, $parts) instead of implode($parts, $glue).

I have a standard Redis installation and this is part of it (although I did not install it directly): https://github.com/colinmollenhour/Cm_RedisSession

There is no custom code in the site. Redis was installed in the usual way according to these Magento Dev Docs.

Here's the code referenced by the error message:

   1406     /**
   1407      * Build the Redis unified protocol command
   1408      *
   1409      * @param array $args
   1410      * @return string
   1411      */
   1412     private static function _prepare_command($args)
   1413     {
   1414         return sprintf('*%d%s%s%s', count($args), CRLF, implode(array_map(array('self', '_map'), $args), CRLF), CRLF);
   1415     }

Has anyone run into this error yet? Is there a solution (other than disabling Redis)?

Version info:

  • Magento ver. 2.3.3
  • redis 5.0.7
  • redis-cli 5.0.7

EDIT: I opened an issue on GitHub.


Magento 2.3.3 is not compatible with PHP 7.4.

Please downgrade your PHP version to 7.3.x to resolve this issue

  • I can downgrade to PHP 7.2 – MountainX Dec 24 '19 at 3:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.