У меня возникла серьезная проблема, когда я пытаюсь использовать Memcached драйвер кэширования в Codeigniter.Однако я не могу автоматически загрузить драйвер cache
в этом массиве:
$autoload['libraries'] = array('database', 'session', 'parser', 'common', 'cache');
Если я удаляю cache
, страница загружается, но если нет, то страница отображается пустой без отчетов об ошибках (обратите внимание, яиметь сообщение об ошибке и установить E_ALL
).
В любом случае, поскольку я не могу загрузить cache
, я добавил его в свой созданный класс common
и загрузил его оттуда, выполнив следующее:
class Common extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->driver('cache');
}
}
Теперь я получаю сообщения об ошибках:
Обнаружена ошибка PHP
Серьезность: Уведомление
Сообщение: неопределенное свойство: Добавить:: $ cache
Имя файла: controllers / add.php
Номер строки: 33 Обнаружена ошибка PHP
Уровень важности: Уведомление
Сообщение: пытаетсяполучить свойство необъекта
Имя файла: controllers / add.php
Номер строки: 33
Какой add.php
это:
class Add extends CI_Controller {
public function index()
{
$data = array('page_title' => 'Add your listing');
$this->load->view('overall_header', $data);
$sql = "SELECT item_id,
item_name
FROM " . ITEMS_TABLE . "
WHERE item_visible = 1";
$items_key = md5('query:' . $sql);
$result = $this->cache->memcached->save($items_key); // this is line 33
}
}
Мне нужен memcached для работы с моим приложением Codeigniter, я пытался использовать этот пользовательский класс из github .
Как мне получить memcached, чтобы работать, у меня все настройки в application/config/memcached.php
установлены правильно, но я думаю, что это не проблема.