Php 使用yii2在url中使用博客名称和id

Php 使用yii2在url中使用博客名称和id,php,yii2,yii-url-manager,Php,Yii2,Yii Url Manager,我需要在Yii2上的url上使用blogname和id,就像现在是我的url一样:- 我想将此链接修改为:- 这是我的博客名“Did-Facebook-Skew-The-2016” 为此,我使用该代码:- web.php文件 'rules' => array( 'blog/blogdetail/<id:\w+>/<name:\w+>'=>'site/blog/blogdetail/id/<id>/

我需要在Yii2上的url上使用blogname和id,就像现在是我的url一样:-

我想将此链接修改为:-

这是我的博客名“Did-Facebook-Skew-The-2016”

为此,我使用该代码:- web.php文件

   'rules' => array(
                     'blog/blogdetail/<id:\w+>/<name:\w+>'=>'site/blog/blogdetail/id/<id>/name/<name>/',
            '<controller:\w+>/<id:\d+>' => '<controller>/view',
            '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
            '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
    ),
“规则”=>数组(
'blog/blogdail/'=>'site/blog/blogdail/id//name/',
“/”=>“/视图”,
'//' => '/',
'/' => '/',
),
鉴于此,这是我的链接:-

 <a href="<?php echo Yii::$app->urlManager->createUrl([$blogid.'/'.$model->title]); ?>">

对你来说好的教程对你来说好的教程你的路线有点奇怪,'site'是一个模块?当我的博客名是一个字母(例如testblog)时,你的代码工作正常,但如果我的名字是两个或两个以上的单词,比如(例如test blog name)它不工作检查编辑。您还可以将ID类型从\w更改为\d您的路径有点奇怪,“站点”是一个模块?当我的博客名为一个字母(例如testblog)时,您的代码工作正常,但如果我的名字是两个或两个以上的单词,如(例如testblog名称),则检查编辑。您还可以将ID类型从\w更改为\d
 <a href="<?php echo Yii::$app->urlManager->createUrl(['site/blog/blogdetail', 'id'=>$blogid, 'name'=>$model->title]); ?>">
'blog/blogdetail/<id:\w+>/<name:\w+>'=>'site/blog/blogdetail/id/<id>/name/<name>/',
<name:\w+>
<name:[\w-]+>