Erro fatal: Chamada para a função indefinida cache_get () [fechado]

10

Estou recebendo o seguinte erro no servidor

Fatal error: Call to undefined function cache_get() in includes/module.inc on line 665
Drush command terminated abnormally due to an unrecoverable error.                                                                                [error]
Error: Call to undefined function cache_get() in includes/module.inc, line 665

Como consertar isto?

Dinesh Kumar Sarangapani
fonte
1
No meu caso, encontrei o problema subjacente adicionando function cache_get() { return false; }a settings.php.
kqw
5
No meu caso, o Ubuntu foi configurado para usar o php7 por padrão. Drush precisa php5 assumindo que o seu servidor também está usando php5 ... Tentesudo ln -sfn /usr/bin/php5 /etc/alternatives/php
Jorge Orpinel

Respostas:

2

Ao digitar drushna linha de comando, você provavelmente alcançou o lugar certo para resolver seu problema. Este erro surge quando drushnão está atualizado e ocorre quando você instala a drushpartir do repositório oficial no Ubuntu.

A solução alternativa é fácil: basta instalar uma nova versão do drush! E para fazer isso, você deve instalar a partir do pacote de backports do Ubuntu.

Yusef
fonte
Eu também encontrei a mesma solução, estou usando o Drush 4.6. Para qual versão posso atualizar?
Dinesh Kumar Sarangapani
13

Para mim, a causa foi diferente: alguns erros não são detectados pelo manipulador de erros do Drupal.

Eu usei um new DateTime()no meu settings.php(provavelmente muito raro) gerou um erro porque a date.timezoneconfiguração na minha CLI php.ininão estava definida.

Para encontrar o erro real (esta é a parte interessante da resposta para todos vocês, eu acho):

Edite sua module.inclinha 723.

Adicione essas linhas antes da cache_getchamada.

if (!function_exists('cache_get')){ 
    debug_print_backtrace(); 
}
$implementations = cache_get('module_implements', 'cache_bootstrap');

Pode fornecer muitas informações sobre a fonte real do problema!

Etienne
fonte
Isso foi muito útil para mim, meu problema foi porque um problema no fast404. Parece haver várias maneiras de alcançar esse erro, essa técnica ajudará na depuração. Graças
casivaagustin
Happy to help :)
Etienne
1
Eu tive um erro de sintaxe em settings.php que resultou em erro fatal: Chame a função indefinida cache_get (). Eu sugiro que aqueles com esse problema verifique novamente o arquivo settings.php.
Ndvo 15/08/19
Isso é basicamente para problemas de versão mais recente do PHP, em que session.save_handler não funciona. Portanto, remova a linha abaixo de settings.php ini_set ('session.save_handler', 'user'); ou Substitua a linha por session_set_save_handler (new SessionHandler ()); ---------------------------- Linha atual ini_set ('session.save_handler', 'user'); Precisa ser substituído por session_set_save_handler (new SessionHandler ());
tapas talukder