"mysite.com/directory"
のような私のビジネスディレクトリページのURLを持つことができるように私のコントローラーは "ディレクトリ"という名前にする必要があります。 しかし問題は "ディレクトリ"はあらかじめ定義されたphpクラスなので、私は再び宣言できません。これは、エラーになりますcodeigniterの "directory"というコントローラーが必要
Fatal error: Cannot redeclare class Directory in C:\wamp\www\Logistica\system\application\controllers\directory.php on line 8
私は何か他のものへの私のクラスとコントローラの名前を変更し、まだURLに「ディレクトリ」を持つことができる方法はありますか?あなたはURLを変更するための.htaccessを使用することができます
$route['directory'] = "DirectoryImplementationClass";
。私のURLは "mysite.com/en/directory"です。私のルートコードは以下の通りです: $ route ['default_controller'] = "home"; $ route ['(\ w {2})/(。*)'] = '$ 2'; $ route ['(\ w {2})'] = $ルート['default_controller']; $ route ['\ w {2}/directory'] = "Dirclass"; しかし、上記はまだ私のためのURLに一致していません。それは私に404エラーを与えています。 – Cruising2hell
私はCIを使ってからしばらくしていましたが、正しく覚えていればルールの順序が重要です。最初の一致するルートが実行されますが、最も具体的なルートは実行されません。 $ route ['\ w {2}/directory'] = "Dirclass"の前に$ route ['(\ w {2})/(。*)'] = '$ 2'あなたのroute.phpファイルでは、directory.phpクラスを探していて、2番目のルートは決して実行されません。 – Dolbz