【问题标题】:Codeigniter Routing Not Rewriting the urlCodeigniter 路由不重写 url
【发布时间】:2016-04-10 10:36:59
【问题描述】:

我在 codeigniter 路由方面不是很专家,但我需要重写/屏蔽 url

我的实际网址是 example.com/america/newyork/200/OC/2015/DALL/CALL

200/OC/2015/DALL/CALL 是我在该页面中传递的值

我想像这样屏蔽 url example.com/america/newyork/

我实际上做了什么

$route['default_controller'] = "america";
$route['america/newyork/(:any)/(:any)/(:any)/(:any)/(:any)'] = 'america/newyork/$1/$2/$3/$4/$5';

但是上面的路由似乎没有达到我的预期,我可以知道我在哪里出错了

这是我的纽约方法

public function newyork($one='',$two='',$three='',$four='',$five='')
    {
        echo $one.''.$two.''.$three.''.$four.''.$five;
    }

【问题讨论】:

  • 试试这个$route['america/newyork/(:any)'] = 'america/newyork/$1/$2/$3/$4/$5';
  • 不工作@KevinYan
  • 你能把你的newyork 方法和访问结果粘贴上去吗?
  • 我在上面贴了 newyork 方法
  • 您遇到 404 错误,或者...? @musthafa

标签: php codeigniter url-routing


【解决方案1】:

除了 ID 之外,如果没有在方法中手动指定它,我永远无法让 CI 从 URL 加载任何内容。所以它可能不会自动拉出你的 $one、$two 等等。

但是,如果您在函数中加载 URI 段(可能不是最有效的方法),也许您会得到一些结果。

$one = $this->uri->segment(whatever_segment_number_here);

当然,这确实需要您自动加载 URL 帮助程序或在您的方法中按需加载它。

【讨论】:

    猜你喜欢
    • 2017-12-04
    • 1970-01-01
    • 2019-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多