对codeigniter路线顺序感到困惑

时间:2015-09-21 10:37:26

标签: php codeigniter routes

我正在学习codeigniter并且被以下内容困扰:

我在路线文件中有这些路线:

$route['(:any)'] = 'pages/view';
$route['news/create'] = 'news/create';
$route['news/(:any)'] = 'news/view/$1';
$route['news'] = 'news';
$route['default_controller'] = 'pages/view';

然而,当我加载http://mysite/index.php/news时,“它加载新闻页面而不是'页面/视图'。我认为这是因为我在顶部有一条捕捉路线,这个页面也只是加载页面/视图

我哪里错了?

2 个答案:

答案 0 :(得分:0)

原因是:任何都不匹配斜杠,至少从CI 3.0+开始。因此,您的第一条路线规则不是“全部”#34;不再。 http://community.actian.com/wiki/OSX_Installer

答案 1 :(得分:0)

any和num对于codeigniter中的路由非常重要。

我们将使用any作为字符串值,例如order001。

我们将使用num作为整数值,例如001。

$route['(:any)'] = 'pages/view/$1';

为第一个参数定义$ 1.

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

在url中传递2个参数。