Фатальна помилка: виклик невизначеної функції 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.
kqw

5
У моєму випадку Ubuntu був налаштований використовувати php7 за замовчуванням. Drush потребує php5, якщо ваш сервер також використовує php5 ... Спробуйтеsudo ln -sfn /usr/bin/php5 /etc/alternatives/php
Jorge Orpinel

Відповіді:


2

Коли ви вводите drushкомандний рядок, ви, мабуть, дійшли до потрібного місця, щоб вирішити свою проблему. Ця помилка виникає, коли drushвона не є актуальною, і це відбувається при встановленні drushз офіційного сховища в Ubuntu.

Вирішення проблем легко: просто встановіть нову версію drush! А для цього вам доведеться встановити з пакету Backports Ubuntu.


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

13

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

Я використовував 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.
ndvo

Це в основному для проблем останньої версії PHP, коли session.save_handler не працює. Тому, будь ласка, видаліть нижню рядок із settings.php ini_set ('session.save_handler', 'user'); або Замініть рядок на session_set_save_handler (новий SessionHandler ()); ---------------------------- Поточний рядок ini_set ('session.save_handler', 'user'); Потрібно замінити session_set_save_handler (новий SessionHandler ());
tapas talukder
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.