Yii2。应用自定义URL规则类

时间:2017-01-26 12:41:23

标签: php url yii2 yii2-basic-app

我创建了一个自定义网址规则,并想在那里添加一些逻辑,但; Maximum allowed size for uploaded files. upload_max_filesize = 2G ; Must be greater than or equal to upload_max_filesize post_max_size = 2G parseRequest方法没有执行。

createUrl

然后将其写在<?php namespace app\components; use yii\base\Object; use yii\web\UrlRuleInterface; /** * {@inheritDoc} */ class CustomUrlRule extends Object implements UrlRuleInterface { /** * {@inheritDoc} */ public function createUrl($manager, $route, $params) { echo __METHOD__; die(); } /** * {@inheritDoc} * @throws \yii\base\InvalidConfigException */ public function parseRequest($manager, $request) { echo __METHOD__; die(); } } UrlManager

$rules

但是代码没有执行。我仍然可以看到我的应用页面。如何申请我无用的 'enablePrettyUrl' => true, 'showScriptName' => false, 'enableStrictParsing' => true, 'rules' => [ 'class' => 'app\components\CustomUrlRule', //other rules...

1 个答案:

答案 0 :(得分:1)

正确的UrlManager示例配置为:

'rules' => [
    ['class' => 'MyUrlRule', 'pattern' => '...', 'route' => 'site/index', ...],
    // ...
]

您需要将其包装在另一个数组中。

修改:您不必像我之前发布的那样扩展yii\web\UrlRule而不是yii\base\Object,只需要正确的界面。