我在Yii创建URL时遇到问题,特别是在使用标签和短划线(# - )时包含特殊字符。
我注意到当我包含#或 - 时,它会将本地化目录删除到URL的后面。但是,如果我摆脱#或 - 本地化目录位于URL的正确位置,例如:
<?php echo Yii::app()->createUrl('/teamgoal/detail/'.$comment->comment->goal_id."#gallery-".$comment->comment->gc_id."");?>
网址产生:
http://example.com/mtd/htdocs/teamgoal/11996#gallery-18074/language/th
这是不正确的。我想要的是:
http://example.com/mtd/htdocs/th/teamgoal/detail/11996#gallery-19804
我该如何解决这个问题?
非常感谢!
答案 0 :(得分:0)
也许您可以通过以下方式在配置中使用重写规则;
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=> false,
'rules'=>array(
'<language:\w+>/<controller:\w+>/<action:\w+>/<id:\d+>'=> '<language>/<controller>/<action>/<id>',
),
),
答案 1 :(得分:0)
如果你有这个,你创建url命令
... createUrl('/ teamgoal / detail /'.... 该网址将包含.... / teamgoal / detail /.....
你确定你没有复制错误吗?否则,请检查您是否有任何特殊的urlManager重写类或规则