如何使用相同的路由和控制器为不同的组件codigniter

时间:2018-06-09 07:50:05

标签: php codeigniter routing codeigniter-3

我正在使用codeigniter来创建不同的组件。 每个组件属于一个城市。例如,伦敦将有3个组件/功能 我想创建如下的网址

mydomain.com/london/component1
mydomain.com/london/component2
mydomain.com/london/component3

同样适用于任何通用城市

mydomain.com/city/component1
mydomain.com/city/component2
mydomain.com/city/component3

我想为此目的使用一个控制器及其功能。 我该如何为此创建路线。

1 个答案:

答案 0 :(得分:1)

希望这会对您有所帮助:

config.php

中的

/*here  mydomain.com*/

$config['base_url'] = 'http://example.com';

您的route.php应该是这样的:

$route['(:any)'] = 'city/$1';
$route['(:any)/(:any)'] = 'city/$1/$2';

$route['default_controller'] = 'city';

$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;

您的城市管理员:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class City extends CI_Controller {
    public function __construtct()
    {
        parent::__construtct();
        $this->load->helper('url');
    }

    public function london($component=NULL)
    {
      echo $component;die;

    }
}

您的链接:

 /* index */
 mydomain.com/

 /* for london output : component */
 mydomain.com/london/component