Codeigniter правильный способ проверить, загружены ли библиотеки/вспомогательные/основные файлы
Я использую codeigniter 2.
Оцените, сможет ли кто-нибудь показать правильный способ проверки следующих файлов:
- загружен файл библиотеки?
- загружен вспомогательный файл?
- загружен файл конфигурации?
- загружен файл модели?
Загружается файл third_party?
рассматривает
Ответы
Ответ 1
Вы можете использовать собственную PHP-функцию class_exists(), чтобы определить, был ли класс определен,
прежде чем позвонить ему. В этом же отношении использование метода_exists() будет проверять, существует ли метод класса.
Поскольку помощники - это набор функций, а не методов, проверка может выполняться с помощью функции function_exists().
if (class_exists('Library'))
{
$this->library->myMethod();
}
Для получения дополнительной информации см.
http://php.net/manual/en/function.class-exists.php.
http://us.php.net/manual/en/function.method-exists.php
Ответ 2
Вам не нужно проверять, вы просто загружаете их везде, где вам нужно, чтобы они были уверены.
Использование библиотеки загрузки CI ($this->load->[library|model|helper]
) всегда будет загружать ее только один раз. Вы можете увидеть это, если вы включите ведение журнала отладки.
Ответ 3
это метод codeigniter для проверки загруженных библиотек.
if($this->load->is_loaded('session')
{
$this->load->library('session');
}
Ответ 4
После загрузки ваш экземпляр хранится на контроллере, чтобы проверить, была ли загружена модель:
if (isset($this->my_model))
Где $это ваш контроллер.
Ответ 5
Лучший способ сделать это - использовать Codeigniter Loader
Class. Loader
aka load
имеет встроенный метод is_loaded
. Метод is_loaded
проверяет, был ли класс уже загружен или нет.
Если класс не был загружен, то is_loaded
возвращает FALSE, иначе он возвращает имя свойства.
Пример:
$this->load->library('table');
$this->load->is_loaded('table'); //Returns 'table'
$this->load->is_loaded('blabla_library'); //Returns FALSE