使用 CodeIgniter 框架開發時,會透過 $this->load->library() 之類的方法來載入特定的檔案。在 CI 的 routing 規則中,同一個檔案只會被載入一次,因此多寫幾次 $this->load->library() 是不會發生什麼慘劇的。
不過有時候還是想確認到底某 class 有沒有載入過,而不想到處丟 $this->load->xxx() 的話,可以用以下方法來確認。
if (class_exists('Library')) { $this->library->myMethod(); }
要注意的是 CI 有別名的規則,比如說有個 model 叫 ‘file_model’。使用別名載入時,會寫成以下
$this->load->model('file_model', 'file'); $this->file->do_something();
這種情況下,若要檢查是否已載入,要用原名。如下:
if (class_exists('File_model')) { // do something }
Leave a Reply