CodeIgniter URL功能段作为查询字符串

时间:2014-04-02 15:46:12

标签: php codeigniter uri segment url-mapping

有没有办法在不改变CodeIgniter的整个配置的情况下将函数($this->uri->segment(2))的URI段作为常规查询字符串而不是直接映射到函数?

例如,我将被迫拥有这样的网址:

http://localhost/books/functionName/bookNumber

我想在控制器名称(书籍)之后有bookNumber编号:

http://localhost/books/bookNumber如果我有这样的URL,它会将bookNumber映射到一个函数名。

1 个答案:

答案 0 :(得分:1)

您可以使用CodeIgniter URI Routing来获得所需的网址格式。

如果您将以下路线添加到application/config/routes.php,则输入的与左侧路线匹配的任何网址都将映射到右侧的控制器/功能:

$route['books/(:num)'] = "books/functionName/$1";

这会将http://localhost/books/123等网址映射到functionName控制器中的books函数,并将123作为参数传递。

这假设您的预订号码为'总是数字(它不适用于字符串),因为(:num)将匹配仅包含数字的段。