Php Yii将多个字作为一个参数路由正则表达式

Php Yii将多个字作为一个参数路由正则表达式,php,regex,yii,routing,Php,Regex,Yii,Routing,我正在使用Yii框架,但这可能适用于其他地方 我有一个试图传递字符串参数的控制器/操作。 这个字符串可以是多个单词,如果是,我使用urlencode($string) 例如: $category=“巧克力蛋糕”; 因此,urlencode($category)=巧克力+蛋糕 然后如何让Yii将其识别为路由中的参数?看来我需要一个可以避开加号的正则表达式 我尝试过的事情: menu/<action:\w+>/<category:\S+>'=>'menu/<act

我正在使用Yii框架,但这可能适用于其他地方

我有一个试图传递字符串参数的控制器/操作。 这个字符串可以是多个单词,如果是,我使用urlencode($string)

例如: $category=“巧克力蛋糕”; 因此,urlencode($category)=巧克力+蛋糕

然后如何让Yii将其识别为路由中的参数?看来我需要一个可以避开加号的正则表达式

我尝试过的事情:

menu/<action:\w+>/<category:\S+>'=>'menu/<action>',
menu/'=>menu/',

menu/'=>menu/',
试试看

menu/'=>menu/',
刚刚在本地进行了测试,并且在我的安装中运行正常;)

menu/<action:\w+>/<category:\w+>'=>'menu/<action>',
menu/<action:\w+>/<category:[\w ]+>'=>'menu/<action>',