Php 在Yii2中配置urlManager规则
我不熟悉使用Yii2,并且一直在使用urlManager,我有下面的代码,它工作得很好,但是我认为这应该更短。我有以下几条规则:-Php 在Yii2中配置urlManager规则,php,yii,configuration,yii2,yii-url-manager,Php,Yii,Configuration,Yii2,Yii Url Manager,我不熟悉使用Yii2,并且一直在使用urlManager,我有下面的代码,它工作得很好,但是我认为这应该更短。我有以下几条规则:- 'rules' => [ 'gifts/<subjectone:[\s\S]+>/<subjecttwo:[\s\S]+>' => 'gifts/index', 'gifts/<subjectone:[\s\S]+>/<subjecttwo:[\s\
'rules' => [
'gifts/<subjectone:[\s\S]+>/<subjecttwo:[\s\S]+>' => 'gifts/index',
'gifts/<subjectone:[\s\S]+>/<subjecttwo:[\s\S]+>/' => 'gifts/index',
'gifts/<subjectone:[\s\S]+>' => 'gifts/index',
'gifts/<subjectone:[\s\S]+>/' => 'gifts/index',
];
“规则”=>[
“礼品/”=>“礼品/索引”,
“礼品//”=>“礼品/索引”,
“礼品/”=>“礼品/索引”,
“礼品/”=>“礼品/索引”,
];
正如你所看到的,我已经添加了4条规则,所有这些规则都可以转到同一页面来处理不同的情况
我已经添加了两次相同的Url,一次使用/
,一次不使用,以停止404。请提供更好的处理方法 您可以在规则末尾添加+|(\/?)
。看一看:
'gifts/<subjectone:[\s\S]+>+|(\/?)' => 'gifts/index',
“礼品/+|(\/?)”=>“礼品/索引”,
因此,没有必要写两次规则。谢谢你的回答