Yii 框架 - 从视图到控制器动作的简单传递变量

Posted

技术标签:

【中文标题】Yii 框架 - 从视图到控制器动作的简单传递变量【英文标题】:Yii framework - Simple passing variable from View to Controller action 【发布时间】:2014-07-30 12:32:17 【问题描述】:

我正在使用 Yii 框架 1.1.14。我想要的只是将变量(例如$var)从视图传递到控制器(例如VideoController)中的特定操作(例如index)。我希望我的代码如下所示:

<a href="<?php /* Here will be route to specific controllers 
                  action with variable $var which will be 
                  passing by this way */ 
         ?>"></a>

所以点击此链接后,用户将被重定向到此特定操作的 url,并且在此操作内,将有可访问变量 $var。 有没有使用 Yii 语法的简单方法?或者如果我想传递多个参数会是什么样子?

【问题讨论】:

【参考方案1】:

在你看来:

<a href="
    <?php
        echo $this->createUrl('controller/action', array(
            'var' => $var,
            'var2' => $var2
        ));
     ?>">
</a>

或者

<?php 
    echo Chtml::link('link text', array(
        'controller/action', 
         'var' => $var,
         'var2' => $var2
    )); 
?>

在您的控制器中:

public function actionAction($var, $var2)

    //Since the createUrl as generated a $_GET parameter
    // $var will be automatically set here if you put it
    // In the method parameters

【讨论】:

以上是关于Yii 框架 - 从视图到控制器动作的简单传递变量的主要内容,如果未能解决你的问题,请参考以下文章

无法从控制器渲染 php 变量以在 yii2 中查看

Yii2 HOW-TO:把数据从控制器传递到视图

Yii2 - 如何获取从控制器传递的所有视图参数?

PHPUnit 测试中 Yii2 中的模拟视图助手

通过组合动作链接和 ASP.Net MVC 5 中的输入将用户键入的输入从视图传递到动作控制器?

通过 uinavigationcontroller 将变量从父视图传递到子视图