Codeigniter URI路由变量编码

时间:2010-08-18 12:31:52

标签: php codeigniter urlencode

我在codeigniter项目的routes.php文件中使用以下路由规则:

$route['manage/(:any)'] = "manage/item_lookup/$1";

这会将在url中管理之后的任何内容重定向到item_lookup函数作为变量。在管理位之后的所有内容都是来自数据库的文本字符串,然后是urlencoded即

the page "some page title" becomes "manage/some+page+title"

然而,codeigniter传递给item_lookup函数的变量是“some_page_title”。这些空格被编码为下划线而不是加号。

是否有某种方法可以强制php将urlencode空格强调为下划线或告诉codeigniter使用加号?

谢谢,Diarmuid。

1 个答案:

答案 0 :(得分:3)

如果您在网址中添加空格,则会转换为空格。使用url_title()创建正确的URL slugs,然后根据该slug查找页面。