Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.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
Php createUrl Yii-我们应该在控制器视图上调用它,还是不重要?_Php_Yii - Fatal编程技术网

Php createUrl Yii-我们应该在控制器视图上调用它,还是不重要?

Php createUrl Yii-我们应该在控制器视图上调用它,还是不重要?,php,yii,Php,Yii,是否应在控制器或视图中调用createUrl? 没关系?或者这很重要 有没有我们应该遵守的规则?像扩展ccontroller的方法应该在控制器上使用等等 在视图中,您可以使用此代码段。您可以在任何地方使用此代码段 Yii::app()->createUrl(); 但对我来说,最好在控制器的操作中定义一个url,并在视图中简单地使用$some_url变量 class SomeController extends Controller { public function action

是否应在控制器或视图中调用createUrl? 没关系?或者这很重要


有没有我们应该遵守的规则?像扩展ccontroller的方法应该在控制器上使用等等

在视图中,您可以使用此代码段。您可以在任何地方使用此代码段

Yii::app()->createUrl();
但对我来说,最好在控制器的操作中定义一个url,并在视图中简单地使用$some_url变量

class SomeController extends Controller
{
    public function actionSomeAction()
    {
        $params = array(
            'key1' => 'value1',
            'key2' => 'value2',
        );

        $myUrl = Yii::app()->createUrl('controller/action', $params);

        $this->render('some_action', array(
            'my_url' => $myUrl
        ));
    }
}

在视图中,您可以使用此代码段。您可以在任何地方使用此代码段

Yii::app()->createUrl();
但对我来说,最好在控制器的操作中定义一个url,并在视图中简单地使用$some_url变量

class SomeController extends Controller
{
    public function actionSomeAction()
    {
        $params = array(
            'key1' => 'value1',
            'key2' => 'value2',
        );

        $myUrl = Yii::app()->createUrl('controller/action', $params);

        $this->render('some_action', array(
            'my_url' => $myUrl
        ));
    }
}

两者都可以,当您在视图$中时,这指的是当前控制器。因此,您可以在控制器或视图中执行$this->createUrl。

当您在视图中时,两者都可以。$这指的是当前控制器。因此,您可以在控制器或视图中执行$this->createUrl。

您可以在视图中使用creating url,它不会影响性能,因为它不使用任何数据库查询。 创建Url:Yii::app->createUrl; 创建绝对url:Yii::app->createAbsoluteUrl


您可以使用$this在视图中使用此函数,如$this->createUrl

您可以在视图中使用创建url,它不会影响性能,因为它不使用任何数据库查询。 创建Url:Yii::app->createUrl; 创建绝对url:Yii::app->createAbsoluteUrl


您可以使用$this在视图中使用此函数,如$this->createUrl

事实上,我们可以,并不意味着我们应该。我知道这一点。我并不关心这些案件的表现。如果我们谈论的是视图助手,我同意mjalajel和onkarjanwa最后两个答案。但我相信我们不是。事实上我们可以,并不意味着我们应该。我知道这一点。我并不关心这些案件的表现。如果我们谈论的是视图助手,我同意mjalajel和onkarjanwa最后两个答案。但我相信我们不是。正如mjalajel所提到的,在视图中使用$this->createURL很好,因为$this指的是当前控制器。正如mjalajel所提到的,在视图中使用$this->createURL很好,因为$this指的是当前控制器。