Kesalahan fatal: Panggil ke fungsi cache_get yang tidak terdefinisi () [ditutup]

10

Saya mendapatkan kesalahan berikut di server

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

Bagaimana cara memperbaikinya?

Dinesh Kumar Sarangapani
sumber
1
Dalam kasus saya saya menemukan masalah yang mendasari dengan menambahkan function cache_get() { return false; }ke settings.php.
kqw
5
Dalam kasus saya Ubuntu sudah diatur untuk menggunakan php7 secara default. Drush membutuhkan php5 dengan asumsi server Anda juga menggunakan php5 ... Cobasudo ln -sfn /usr/bin/php5 /etc/alternatives/php
Jorge Orpinel

Jawaban:

2

Saat Anda mengetikkan drushbaris perintah, Anda mungkin mencapai tempat yang tepat untuk menyelesaikan masalah Anda. Kesalahan ini muncul ketika drushtidak mutakhir dan ini terjadi ketika Anda menginstal drushdari repositori resmi di Ubuntu.

Cara mengatasinya mudah: cukup instal versi baru drush! Dan untuk melakukannya, Anda harus menginstal dari paket backports Ubuntu.

Yusef
sumber
Saya juga menemukan solusi yang sama, saya menggunakan Drush 4.6. Ke versi mana saya bisa memutakhirkan?
Dinesh Kumar Sarangapani
13

Bagi saya, penyebabnya berbeda: beberapa kesalahan tidak ditangkap oleh penangan kesalahan Drupal.

Saya menggunakan new DateTime()dalam settings.php(mungkin sangat jarang) saya menghasilkan kesalahan karena date.timezonepengaturan di CLI saya php.initidak diatur.

Untuk menemukan kesalahan yang sebenarnya (ini adalah bagian yang menarik dari jawaban untuk Anda semua, saya pikir):

Edit module.inc, baris 723 Anda.

Tambahkan baris ini sebelum cache_getpanggilan.

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

Mungkin memberi Anda banyak informasi tentang sumber masalah sebenarnya!

Etienne
sumber
Ini sangat berguna bagi saya, saya masalah karena masalah di fast404. Tampaknya ada beberapa cara untuk mencapai kesalahan ini, teknik ini akan membantu debug. Terima kasih
casivaagustin
Senang membantu :)
Etienne
1
Saya memiliki kesalahan sintaksis di settings.php yang mengakibatkan kesalahan fatal: Panggil ke fungsi cache_get yang tidak terdefinisi (). Saya sarankan mereka yang memiliki masalah ini untuk memeriksa kembali file settings.php mereka.
ndvo
Ini pada dasarnya untuk masalah versi PHP terbaru di mana session.save_handler tidak berfungsi. Jadi tolong hapus baris di bawah ini dari settings.php ini_set ('session.save_handler', 'user'); atau Ganti baris dengan session_set_save_handler (SessionHandler baru ()); ---------------------------- Baris saat ini ini_set ('session.save_handler', 'user'); Perlu Diganti oleh session_set_save_handler (SessionHandler baru ());
tapas talukder