Неустранимая ошибка: вызов неопределенной функции cache_get () [закрыто]


10

Я получаю следующую ошибку на сервере

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

Как это исправить?


1
В моем случае я нашел основную проблему, добавив function cache_get() { return false; }к settings.php.
Квт

5
В моем случае Ubuntu был настроен на использование php7 по умолчанию. Drush нужен php5, если ваш сервер также использует php5 ... Попробуйтеsudo ln -sfn /usr/bin/php5 /etc/alternatives/php
Хорхе Орпинел

Ответы:


2

Когда вы вводите drushв командной строке, вы, вероятно, достигли нужного места, чтобы решить вашу проблему. Эта ошибка возникает, когда drushона не актуальна, и это происходит при установке drushиз официального репозитория в Ubuntu.

Обойти это просто: просто установите новую версию drush! И чтобы сделать это, вам нужно установить пакет backports из Ubuntu.


Я также нашел то же решение, я использую Drush 4.6. До какой версии я могу обновиться?
Динеш Кумар Сарангапани

13

Для меня причина была в другом: некоторые ошибки не улавливаются обработчиком ошибок Drupal.

Я использовал a new DateTime()в моем settings.php(вероятно, очень редком) сообщении об ошибке, поскольку date.timezoneнастройки в моем CLI php.iniне были установлены.

Чтобы найти настоящую ошибку (это интересная часть ответа для всех вас, я думаю):

Отредактируйте свою module.incстроку 723.

Добавьте эти строки перед cache_getзвонком.

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

Это может дать вам много информации о реальном источнике проблемы!


Это было очень полезно для меня, потому что проблема в fast404. Кажется, есть несколько способов достичь этой ошибки, эта техника поможет отладить. Спасибо
casivaagustin


1
У меня была синтаксическая ошибка в settings.php, которая привела к фатальной ошибке: вызов неопределенной функции cache_get (). Я бы предложил тем, у кого есть эта проблема, дважды проверить свой файл settings.php.
18:07

Это в основном для последних версий PHP, где session.save_handler не работает. Поэтому, пожалуйста, удалите нижнюю строку из settings.php ini_set ('session.save_handler', 'user'); или заменить строку на session_set_save_handler (new SessionHandler ()); ---------------------------- Текущая строка ini_set ('session.save_handler', 'user'); Нужно заменить на session_set_save_handler (new SessionHandler ());
тапас талукдер
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.