首页 > 解决方案 > Codeigniter 使用额外的 url 参数

问题描述

在 codeigniter 中,我希望不考虑一个 url 段。

example.com/app/dev1/controller/function/id
example.com/app/dev2/controller/function/id

基本网址是

baseUrl = example.com/app

当我使用这种类型的 url 时,codeigniter 将“dev1”视为控制器,将“controller”视为函数,所以我得到了找不到页面的错误。

我想知道我是否可以编写不将第一个参数视为控制器的代码,并从第二个参数开始考虑。

我不能添加基本 url,因为它不是常量,我们可以有 en、fr、nl 等,所以在这种情况下我们有什么帮助我不想添加查询字符串“?”。我们可以使用 .htaccess 做任何事情吗

标签: phpcodeigniter.htaccess

解决方案


假设 url 如下所示:www.paintes.com/painters-in-chennai 那么路由可以如下所示

    $route['painters-in-(:any)'] ='index/paintersIn/$1';

index.php控制器中,我将能够像下面这样接收 chennai

    function paintesIn($city_name)
    {
        echo $city_name //OUTPUT WILL BE "chennai"
    }

如果 url 类似于 www.paintes.com/painters-in-mumbai ,那么输出将是 mumbai

根据您的要求,网址如下:www.paintes.com/mumbai-painters 然后您可以像下面这样写

    $route['(:any)-painters'] ='index/paintersIn/$1';

推荐阅读