私は何かのようなURLのルーティングを実現したいwww.example.com/alicia
アリシアはクラス名やメソッド名ではなく、URLにデータを渡し、いくつかのクラスで私はこれにアクセスしたいと思います私はそれを使用することができますか?前もって感謝します。どのようにcodeigniterでURLルーティングのこの種のを達成する
答えて
既に動作している既存のURLを破棄したくないため、これは難しいことがあります。
Apacheを使用している場合は、いくつかの名前ではないそれぞれのコントローラーを除外するよう注意してmod_rewriteルールを設定できます。
また、ベースコントローラにremap methodを作成することもできます。
class Welcome extends CI_Controller
{
public function _remap($method)
{
echo "request for $method being handled by " . __METHOD__;
}
}
あなたが要求した$方法を調べたり、おそらくあなたが何をしたいのかを決めるために$ _SERVER [「REQUEST_URI」]を見て、そのメソッドのロジックを書くことができます。これは整理するのがやや難しいかもしれませんが、おそらく開始するには良い方法です。
これらのURLを他のURLと区別するためには、routing functionality of codeigniterを使用し、routes.phpファイルでパターンマッチングルールを定義して、それら。
私は、default_controllerがこれの要素になると信じています。 controller :: methodクラスに実際に対応するすべてのコントローラ/メソッドの状況は、そのcontroller ::メソッドで処理する必要があります。一致しないこといずれかが、私は信じて、あなたのdefault_controllerに割り当てられます。
$route['default_controller'] = 'welcome';
あなたが使用することができますCodeIgniterの組み込みのルーティング、ファイルroute.php
があなたのconfig
フォルダにあります。
:
$route['alicia'] = 'welcome/index/something';
$route['alicia/:any'] = 'welcome/index/someotherthing/$1';
を、あなたのコントローラでは、例えばwelcome
あなただけのような関数を作成:routing上とurlhelper
public function index($page = null){
if($page=='something'){
// do what you need to do, for example load a view:
$this->load->view('allaboutalicia');
}
elseif ($page=='someotherthing'){
// here you can read in data from url (www.example.com/alicia/2017
$year=$this->uri->segment(2); // you need to load the helper url previously
}else{
// do some other stuff
}
}
ドキュメント
コメントの後編集:あなたのURIセグメントは、ユーザー名のように、変数を表現する場合には
、その後、あなたはwww.example.com/user/alice
のようなURIスキームを使用してのようにあなたのルートを作成する必要がありますあなたのコントローラで、その後
$route['user/:any'] = 'welcome/index/user';
welcome
public function index($page=null){
if($page=='user'){
// do what you need to do with that user
$user=$this->uri->segment(2); // you need to load the helper url
}
else{
// exception
}
}
- 1. BlackBerryでこの種のリストをどのように達成できますか?
- 2. CodeIgniterでこのURIスキームをどのように達成できますか?
- 3. どのような種類のクエリでこれを達成できますか?
- 4. PHP CodeIgniterのURLのルーティング:URL
- 5. PHPでのURLルーティングCodeigniter
- 6. CodeIgniterでURLをルーティングする
- 7. どのように瞬間jsでこの種の日付形式を達成するために??
- 8. これをブートストラップでどのように達成するには?
- 9. このコードはどのように達成できますか?
- 10. どのように私はこれを達成するCSS
- 11. CodeigniterのURLを再ルーティングしてURLにリダイレクトする方法は?
- 12. ドリューアップでこれをどのように達成するのですか?
- 13. このスプリッタ効果をコードでどのように達成するには?
- 14. どのようにインターフェイスビルダーでこのインターフェイスを達成するには?
- 15. ASP.Net MVC2でこのタイプのURLをどのように達成できますか?
- 16. facebookのようなcodeigniterに動的URLを作成する
- 17. codeigniterでのルーティング:
- 18. このビューをAndroidでどのように達成できますか?
- 19. ルビーでどのようにこの結果を達成できますか?
- 20. どのようにしてこのターゲットをCSSで達成できますか?
- 21. どのようにクラウドでフォールトトレランスを達成するには?
- 22. どのように帆でMVCパターンを達成するには?
- 23. elasticsearchで2種類のクロス結合を達成するにはどうすればよいですか?
- 24. どのようにRSSベースのニュースロールを達成するには?
- 25. どのようにEntranceThemeTransitionの反対を達成するには?
- 26. どのようにGmailのアプリのようにアニメーションを達成するには?
- 27. このjQueryの効果はどのように達成できますか?
- 28. CodeIgniterでURLルーティングの例外を処理する方法
- 29. ResNetどのようにドキュメントのように精度を達成するには?
- 30. どのように私はgotoxy達成できる()のgcc
このルーティング方法では、ルーティングする必要のある各名前に個別のルールが必要です。わかりませんが、OPが指定した任意の名前に対して機能するものを探していると感じました。 twitter.com/usernameのような並べ替え –