通过url将变量传递给索引函数

时间:2012-03-16 16:16:00

标签: php codeigniter routing url-routing

我已经设置了一个名为links的控制器,我有几个页面的路由被定向到这个控制器,在这个控制器中,我有许多不同的功能,可以通过ajax调用访问页面的不同部分。以下是我的路线配置示例:

    $route['games'] = "links";   
    $route['games/ajax_pager'] = "links/ajax_pager";
    $route['games/ajax_dbr/(:any)'] = "links/ajax_dbr/$1";
    $route['games/linkinfo/(:num)'] = "links/linkinfo/$1";
    $route['games/linkobj/(:num)'] = "links/linkobj/$1";
    $route['links'] = "links";
    $route['links/ajax_pager'] = "links/ajax_pager";
    $route['links/ajax_dbr/(:any)'] = "links/ajax_dbr/$1";
    $route['links/linkinfo/(:num)'] = "links/linkinfo/$1";

我现在要做的是如果它与路由到上面的任何函数不匹配,则从传递给索引函数的url的第二段中得到一个变量。所以像这样:

$route['games/(:any)'] = "links/$1";

但这没有用,有没有办法在没有创建新功能的情况下这样做。希望这很清楚 - 如果需要澄清,请告诉我。提前知道任何帮助。

1 个答案:

答案 0 :(得分:1)

第一段是控制器,第二段是功能,第三段可以是你的变量。因此,如果您要将变量发送到链接控制器的索引函数,则看起来像这样:

$route['games/(:any)'] = "links/index/$1";

当有人浏览index.php / games / atestvariable时,会调用带有变量atestvariable的链接控制器的索引函数。