Yii - 具有特殊字符的地图网址。

时间:2013-12-26 20:21:22

标签: url yii hashtag url-mapping


我使用Yii框架,并希望创建一个加载用户信息的页面。但我总是希望在userID之前有一个#标签。因此userID是动态的,并且hashtag始终存在。

目标:
http://example.com/#userID

我该如何解决?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您可以尝试在主配置文件中配置urlManager以添加规则,以强制解析您的网址中的'#'字符,以便为您的userinfo查看操作解决此问题:

'urlManager'=>array('urlFormat'=>'path','appendParams'=>false,
    'rules'=>array('#<username:.*?>'=>'YOURACTION_ROUTE',);

你的控制器动作是这样的:

public function action_YOUR_ACTION_($username, $id)
{
   show_user_info($id);
}

通过这种方式,真正的$ id被隐藏,但是动作可以捕获它并正确处理你的userinfo。 或者你可以添加一些代码来通过$ username查找用户而没有$ id它也没关系。