2014-02-21 105 views
0

我已經寫在應用程序/核心核心控制器 - MY_Controller.php:CI構造函數無法加載

class MY_ProtectedController extends CI_Controller{ 
    public function __construct(){ 
    echo("I luv bd1"); //This echo's 
    parent::__construct(); 
    echo("I luv bd2"); //this one even couldn't reached to 
    $this->CI=& get_instance();  
    $this->CI->load->library('permission'); 
    $this->CI->load->library('authentication'); 
    $this->CI->load->model('commonmodel'); 
    $this->CI->load->model('admin/usermodel'); 
    $this->CI->load->library('imagelib'); 
    $this->CI->load->library('facebook');  
    } 

正如你可以看到第一個回波呼應但是第二不能得到,因爲父達到: :__構造調用CI_Controllers的__construct,它在方法解析順序中失敗了某處(連續調用其中的其他方法---我猜)。如果我繼續調試,那麼除了我已經浪費了兩天時間之外,我認爲這將花費我整整一天的時間。

僅供參考:我在EC2 VPS上。安裝了php5.4 *,apache2.4 *,mysql5.5 * CI:2.1.3,php.ini:display_errors = On, CI:error_reporting(E_ALL) [但是CI的錯誤日誌沒有被寫入同樣的道理。我給了日誌文件夾755 perm。] 更多調試:調用控制器而不繼承自MY_protected也會導致相同的結果。 當然在這個問題上:autoload,library load,view load,helper load ALL ARE FAILING。

請幫忙!

+0

檢查Apache的錯誤日誌文件 – Sundar

+0

@Sundar嘿兄弟。我想我們已經在昨天的另一個問題上談論過這個問題。我告訴你我檢查過它。它沒有給我任何東西。無論如何,我正在從〜> tail -n 300 error_log.txt中檢查它,並且它給了我最後300行,其中沒有任何內容表明構造函數有問題。但我通過逐行調試發現它。 – edam

回答

0

嘗試安裝codeigniter的新副本,即Download Codeigniter並僅粘貼已更改或添加的文件。

例如,您很可能會將新文件添加到控制器文件夾,因此請將您的工作移至新安裝的codeigniter控制器文件夾。爲你所有的工作做到這一點..

我知道這不是一個合適的解決方案,但至少如果你這樣做,你可以繼續工作。我無法看到您提供的信息,爲什麼在parent::__construct();之後不會運行任何內容,甚至無法運行該行。

希望這會有所幫助。

+0

請參閱[本問題](http://stackoverflow.com/questions/21931570/how-do-i-get-php-mysql-for-php-5-4-23-while-its-conflicting-with- PHP-共5-3) – edam