2010-06-05 3 views
1

Я начал работать с CodeIgniter, но я не могу понять, что кто-то думает. Как загрузить один класс в другой?Класс нагрузки CodeIgniter в класс

$this->load->library("hello_world"); 

Это не работает?

мой класс -> Загрузка -> класс hello_world

class myclass { 
     function test() { 
     $this->load->library("hello_world"); 
     $this->hello_world->hello(); 
     } 
} 

Сообщение: Не определено свойство: MyClass :: $ нагрузка

+0

где вы сохранили свой класс? в приложении/библиотеке? – streetparade

+0

Да, в приложении/библиотеке – user355510

ответ

5

Возможность загрузки класса зависит от доступной функции загрузки-> библиотеки. Он доступен для классов контроллеров и моделей, но их расширение может оказаться неприемлемым для вашего использования.

Вместо этого вы можете получить ссылку на CI и использовать это для загрузки и обращения к своему классу или загрузить его как обычно в PHP ($ c = new MyClass).

Чтобы получить rerence для CI использовать следующее:

$CI =& get_instance(); 

$CI->load->helper('url'); 
$CI->load->library('session'); 
$CI->config->item('base_url'); 
etc. 
+0

Я действительно работал, спасибо :) – user355510

1

Вы должны расширить контроллер CI/модель

например

class Some_controller extends Controller 
{ 
    public function index() {} 
} 
+1

Это актуально для контроллеров, а не для библиотек. Я думаю, он спрашивает, как включить библиотеку? – streetparade

+0

Да, я просил библиотеку – user355510

+2

Упомяните, что в следующий раз: P –