Action View Helper - 获取控制器/操作名称

时间:2012-04-16 16:01:36

标签: php zend-framework

使用以下控制器:

class mydvbController extends Zend_Controller_Action
{
    public function indexAction()
    {

    }

    public function careerAction()
    {

    }

    public function naviAction()
    {

    }
}

以下视图脚本 - index.phtml:

<?php echo $this->action('navi', 'mydvb'); ?>
Some stuff.....

和career.phtml:

<?php echo $this->action('navi', 'mydvb'); ?>
Some other stuff.....

我想在naviAction()中获取操作的名称,具体取决于称为操作视图助手的操作(在我的示例索引或职业中)。当然有可能在参数中传递它,如下所示:

    <?php echo $this->action('navi', 'mydvb', null, array('actionName' => $this->naviAction)); ?>

但这样做意味着我必须将动作名称从每个动作传递到其视图,并从视图作为参数传递给动作视图助手。我想知道是否有更简单的方法从动作视图助手中获取动作的名称。

1 个答案:

答案 0 :(得分:2)

在您的情况下,从请求中获取操作名称会不会更容易?

$front = Zend_Controller_Front::getInstance();
$actionName = $front->getRequest()->getActionName();
echo $actionName;