2010-08-19 40 views
0

我需要關於如何實現這個動作幫手的建議。目前,我有類似的東西Zend框架:需要關於如何實現控制器幫手的建議

class Application_Controller_Action_Helper_AppendParamsToUrl extends Zend_Controller_Action_Helper_Abstract { 
    function appendParamsToUrl($params = array()) { 
     $router = Zend_Controller_Front::getInstance()->getRouter(); 
     $url = $router->assemble($params); 

     if (!empty($_SERVER['QUERY_STRING'])) { 
      $url .= $_SERVER['QUERY_STRING']; 
     } 
     return $url; 
    } 
} 

但正如你所看到的,我認爲該函數應該是一個靜態函數?但是如何才能找到這個Zend_Controller_Action_Helper thingy?

回答

1

你可以從你控制器調用幫手還要重命名appendParamsToUrl()函數以指導()

function direct($params = array()) {...} 

在這種情況下,您將l能夠從控制器訪問它

$this->_helper->appendParamsToUrl($params); 
3

使函數公衆和你的bootstrap.php中確保控制器助手能夠自動載入

// add paths to controller helpers 
Zend_Controller_Action_HelperBroker::addPath(APPLICATION_PATH .'/controllers/helpers'); 

然後,您應該能夠通過

$this->_helper->appendParamsToUrl->appendParamsToUrl();