CodeIgniter Проверка подключения к базе данных и загружена ли библиотека сеансов - PullRequest
0 голосов
/ 18 апреля 2011

Два вопроса:

  1. Есть ли способ в CodeIgniter проверить, была ли загружена библиотека? Если загружена библиотека сессий, я хочу показать пользовательскую страницу.

  2. Если моя база данных находится в автономном режиме и CodeIgniter не может подключиться, как я могу отображать пользовательское сообщение, а не страницу ошибки по умолчанию?

Ответы [ 2 ]

1 голос
/ 26 мая 2011

Не знаю, является ли это лучшей (или даже хорошей) практикой, но я обнаружил, что использование чего-то вроде

if(isset($CI->session)):
    //show user specific page
endif;

пока работает для меня, например.последние 5 минут, так как я попробовал это =).В моем случае я не хотел, чтобы отладочное сообщение:

Session class already loaded. Second attempt ignored.

загрязняло мои журналы, поэтому я использовал:

if(!isset($CI->session)):
    $CI->load->library('session');
endif;

hth ..

1 голос
/ 18 апреля 2011
  1. Найдено this на форуме Codeigniter:

    "Если вы загляните в библиотеку Loader, в функцию _ci_load_class вы увидите, что она проверяет,класс уже загружен и будет загружать его снова только в том случае, если ему присвоена новая переменная.

    Интересно, что если вы загружаете один и тот же класс несколько раз, использование памяти увеличивается, хотя "

    Так что, если вы позвоните $this->load->library(LIB_NAME) более одного раза, он будет загружен только один раз.Это с 2009 года, и CI обновлялся много раз с тех пор, поэтому не уверен, что это все еще верно.

  2. Я надеюсь, что ваш db никогда не падает.Но если это произойдет, $CI->db->conn_id вернет true, если сможет подключиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...