2011-01-20 46 views
1

我需要我的控制器是名爲「目錄」,所以我可以有我喜歡"mysite.com/directory"商業目錄頁網址。 但問題是,「目錄」是一個預定義的PHP類,所以我不能再次聲明。它給錯誤需要一個名爲「目錄」控制器笨

Fatal error: Cannot redeclare class Directory in C:\wamp\www\Logistica\system\application\controllers\directory.php on line 8

有沒有一種方法我可以重命名我的等級和控制器到別的東西,仍然有「目錄」的網址是什麼?

回答

6

看看CodeIgniter routing

你的情況,你要像一個路線:

$route['directory'] = "DirectoryImplementationClass";

+0

我已經使用CI URL標識,所以我的路線類是一點點已經修改。我的網址是「mysite.com/en/directory」,這裏是我的路線代碼: $路線[「default_controller」] =「家」; $路線[ '(\ W {2})/(。*)'] = '$ 2'; $路線[ '(\ W {2})'] = $路線[ 'default_controller']; $ route ['\ w {2}/directory'] =「Dirclass」; 但上面依然沒有對我匹配的URL。它在頁面上給我404錯誤。 – Cruising2hell 2011-01-20 09:11:41

+0

自從我使用CI之後已經有一段時間了,但如果我沒有記錯,規則的順序就很重要。第一條匹配路線將運行,而不是最具體的路線。因此,如果$ route ['(\ w {2})/(。*)'] ='$ 2'在$ route ['\ w {2}/directory'] =「Dirclass」之前;在你的route.php文件中,它會查找directory.php類,第二條路由永遠不會被執行。 – Dolbz 2011-01-20 13:15:33

1

可以使用的.htaccess更改URL。 這意味着你的名字是不是目錄 其他的東西,那麼你可以使用重寫規則URL更改名稱

參考: htaccess in codeigniter