2011-12-06 64 views
1

我創建了這個代碼的核心目錄中的文件MY_Router.php笨2.0 MY_Router.php錯誤

<?php 
class MY_Router extends CI_Router { 

    function MY_Router() 
    { 
     parent::CI_Router(); 
    } 

    function _validate_request($segments) 
    { 
     // Comprueba que el controlador no existe 
     if (!file_exists(APPPATH.'controllers/'.$segments[0].EXT)) 
     { 
      $segments = array("page", "load", $segments[0]); 

     } 
     return parent::_validate_request($segments); 
    } 
} 
?> 

當我調用應用程序,出現此錯誤:

Fatal error: Call to undefined method CI_Router::CI_Router() in /home/david/public_html/CodeIgniter_2.1.0/application/core/MY_Router.php on line 6

問題出在哪裏?

回答

6

問題是在CI_Router類中沒有名爲CI_Router()的方法。在PHP4中,構造函數具有與該類相同的名稱。在PHP5中,構造函數名爲__construct()

要解決此問題,從

function MY_Router() 
{ 
    parent::CI_Router(); 
} 

更改MY_Router類的構造函數來

function __construct() 
{ 
    parent::__construct(); 
} 
+0

這是工作。非常感謝。我是codeigniter新手:頁 – David