本文整理汇总了PHP中Zend_View_Abstract::getScriptPaths方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_View_Abstract::getScriptPaths方法的具体用法?PHP Zend_View_Abstract::getScriptPaths怎么用?PHP Zend_View_Abstract::getScriptPaths使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_View_Abstract
的用法示例。
在下文中一共展示了Zend_View_Abstract::getScriptPaths方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _renderDefaultScript
/**
* Tries to render a delegate action's default template if it exists.
*
* Because we can't always know the short name of a delegate (like we can
* with a controller), the default view spec of :controller/:action:suffix
* won't work for us. This means we can't just prepend our default paths to
* the view script paths. Instead, this function changes the viewRenderer
* spec to just :action:suffix, puts in the default dirs, tries to render
* and then flips back the settings afterwards.
*
* @todo Ugly, needs refactoring
* @param Zend_Controller_Action_Helper_ViewRenderer $viewRenderer
* @param Zend_View_Abstract $view
* @param string $action Name of the action, without the "Action" suffix
*/
protected function _renderDefaultScript($viewRenderer, $view, $action)
{
//No settings? Abort to save cycles
$defaultPaths = $this->getDefaultScriptPaths();
if (empty($defaultPaths)) {
return;
}
//Save the old settings
$oldSpec = $viewRenderer->getNoController();
$oldPaths = $view->getScriptPaths();
//Set the viewrenderer spec to look inside a flat directory
$viewRenderer->setNoController(true);
$view->setScriptPath($defaultPaths);
$path = $viewRenderer->getViewScript($action);
//relative path
$fullPath = $view->getScriptPath($path);
//absolute path
//We use the full path to make sure this template actually exists on
//disc but Zend_View will only accept a path relative to a script dir.
if (!empty($fullPath) !== false) {
$viewRenderer->renderScript($path);
}
//Reset view settings so we don't botch anything afterwards?
$viewRenderer->setNoController($oldSpec);
$view->setScriptPath($oldPaths);
}