Можно ли загружать библиотеку из библиотеки в воспламенитель кода?
Если я сделаю
$this->validator = $this->CI->load->library('validators/'.$params['validator']);
изнутри другой библиотеки $ this-> validator имеет значение NULL.
Почему это должно быть?
Проверьте подпись класса CI_Loader для метода library (), к которому вы обращаетесь:
/** * Class Loader * * This function lets users load and instantiate classes. * It is designed to be called from a user's app controllers. * * @access public * @param string the name of the class * @param mixed the optional parameters * @param string an optional object name * @return void */ function library($library = '', $params = NULL, $object_name = NULL) {
Он возвращает void, поэтому, конечно, все, что вы установили для возвращаемого значения, будет null. Я думаю, вы запутались в цели этого метода. Его загрузить библиотеку и прикрепить ее к супер-объекту codeigniter, чтобы вы могли ссылаться на него как:
$this->CI->[library name]
В вашем случае вы просто захотите ссылаться на недавно загруженную библиотеку (определенную библиотеку проверки подлинности, которую я угадываю на основе фрагмента кода) обычным способом:
$this->CI->[newly loaded super awesome validator library]