0

次のコントローラーを使用する:

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)); ?>

ただし、これを行うと、すべてのアクションからそのビューにアクション名を渡し、パラメーターとしてビューからアクションビューヘルパーにアクション名を渡す必要があります。アクションビューヘルパーの内部からアクションの名前を取得する簡単な方法があるのではないかと思います。

4

1 に答える 1

2

あなたの場合、リクエストからアクション名を取得する方が簡単ではないでしょうか?

$front = Zend_Controller_Front::getInstance();
$actionName = $front->getRequest()->getActionName();
echo $actionName;
于 2012-04-16T18:30:24.440 に答える