如何为codeigniter中需要参数的控制器函数创建路由

时间:2012-08-12 10:42:16

标签: php codeigniter routing

我想知道如何为需要传递参数的控制器函数创建路由。 就像我创建一个这样的函数:

function abc($arg)
 {
     return $arg;
 }

那么如何为同一个功能指定路线?我的论点将包含字母和数字的混合

2 个答案:

答案 0 :(得分:0)

使用uri class并尝试阅读传递给您方法的细分

在下面的控制器方法中,您传递了诸如
的网址段 controller / function / argument1 / argument2 / argument3 / 4/5/6 / ..

// controller
public function myfunction(){
 var_dump($this->url->segment(1)); // route/abc -> abc
 var_dump($this->url->segment(2)); // route/abc/123 -> 123
}

如果函数采用固定长度的参数,那么

public function myfunction($arg1,$arg2){
 // ..
}

你可以使用路线映射来完成这项工作,

$route["myfunction/(any)"= "remap" // ..

答案 1 :(得分:0)

将此添加到 APP_PATH / application / config / routes.php

$route['controller_name/abc/([A-Za-z0-9])+'] = "controller_name/abc/$1";

了解更多详情http://codeigniter.com/user_guide/general/routing.html