【发布时间】:2023-04-09 15:29:01
【问题描述】:
我正在使用 Code-igniter 3,需要使用 URL 参数将参数传递给控制器。我的网址是这样的:
http://192.168.40.50/user/list/محمد
我将它添加到配置文件中:
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-|آ-ی';
而我的控制器是这样的:
public function list($name)
{
// The $name parameter is incorrect here
// In this case $name = 'E-E'
}
问题是我得到的是“E-E”而不是“محمد”。
我只是搜索了很多问题,但没有找到解决方案
َ更新
我正在使用路由。参数在没有路由的情况下正确传递,但是当我添加路由时,UTF-8 字符会发生变化。我的路线是这样的:
$route['user/list/(:any)'] = 'user/list_of/$1';
【问题讨论】:
-
为此,您尝试在列表函数中回显
urldecode($name)吗? -
urldecode 不工作
标签: php codeigniter url utf-8 codeigniter-3