如果urlFormat在yii中为'get',我可以访问urlManager规则吗?

时间:2014-08-02 09:47:42

标签: php yii yii-url-manager

我的YII urlManager出了问题。当urlFormat为' get'时,urlManager规则不适用。这是我的urlManager代码

'urlManager' => array(
   'urlFormat' => 'get',
   'showScriptName' => true,
   //'appendParams'=>false,
   'hostInfo'=>'My Base Url',
   'secureHostInfo'=>'My Secured Base Url',
   'ssl'=>false,
   'class'=>'myUrlManager',
   'rules' => array(
       array(
           'class' => 'application.components.MyBaseUrlManager',
           'connectionID' => 'db',
       ),
       '<controller:\w+>/<action:\w+>/*'=>'<controller>/<action>',
    ),
),

这里myUrlManager是CUrlManager的扩展类,MyBaseUrlManager是CBaseUrlRule的扩展类。

当urlformat为&#39; get&#39;?

时,是否可以访问urlManager的规则

先谢谢

1 个答案:

答案 0 :(得分:0)

您可以访问规则,但不会处理或应用这些规则。见https://github.com/yiisoft/yii/blob/master/framework/web/CUrlManager.php#L214

protected function processRules()
{
    if(empty($this->rules) || $this->getUrlFormat()===self::GET_FORMAT)
        return;
    ...