Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yii2 有没有办法在YII框架中有条件地触发urlManager_Yii2_Conditional_Yii Url Manager - Fatal编程技术网

Yii2 有没有办法在YII框架中有条件地触发urlManager

Yii2 有没有办法在YII框架中有条件地触发urlManager,yii2,conditional,yii-url-manager,Yii2,Conditional,Yii Url Manager,我有以下代码- 'urlManager'=>array( 'urlFormat'=>'path', //'showScriptName'=>false, //'caseSensitive'=>false, 'rules'=>array( ''=>'site/home', 'logout'=>'si

我有以下代码-

'urlManager'=>array(
        'urlFormat'=>'path',
                    //'showScriptName'=>false,
                    //'caseSensitive'=>false,
        'rules'=>array(
            ''=>'site/home',
            'logout'=>'site/logout',
            'login' =>'site/login',
            'page/about' => 'page/show/id/1',               
            '<cat0:[a-zA-Z\-0-9]+>/<cat1:[a-zA-Z\-0-9]+>/<name:[a-zA-Z\-0-9]+>' => 'product/single',
            '<cat0:[a-zA-Z\-0-9]+>/<cat1:[a-zA-Z\-0-9]+>' => 'product/products',
            '<cat0:[a-zA-Z\-0-9 ]+>' => 'product/subcategories',

        ),
    ),

yi认为它是CAT0和CAT1,因此它转发给我<代码>产品/产品<代码>控制器,使用<代码> $$GET('CAT0')=站点< /代码>和<代码> $$GET [ 'CAT1′] =联系< /代码> .<


有什么出路吗?

这是错误的。你的规则是:

any_word/any_word
将转到
product/products

i、 e.
site/contact
将转到
product/products

所以试试这个:
products/'=>product/products',

现在
products/cat1/cat2
将转到
/products/products


更多信息请阅读本节:

这是错误的。你的规则是:

any_word/any_word
将转到
product/products

i、 e.
site/contact
将转到
product/products

所以试试这个:
products/'=>product/products',

现在
products/cat1/cat2
将转到
/products/products


要了解更多信息,请阅读本节:

正如@zakrzu建议的那样,要么为动态规则使用前缀,要么在动态规则之前添加所有静态规则。。因为图案是一样的,我会的。谢谢@zakrzu建议为动态规则使用前缀,或者在动态规则之前添加所有静态规则。。因为图案是一样的,我会的。谢谢,谢谢。这对我很有帮助,谢谢你。这对我很有帮助
/site/contact/