public function filterText($text) { $inflector = new Zend_Filter_Inflector(':text'); $inflector->setRules(array(':text' => array(new Zend_Filter_StringToLower(), new Zend_Filter_StripTags(), new Zend_Filter_Word_DashToSeparator(), new Zend_Filter_Word_SeparatorToSeparator('/', '_'), new Zend_Filter_Word_UnderscoreToSeparator(), new Zend_Filter_StringTrim(), new Zend_Filter_Alnum(true), new Zend_Filter_Word_SeparatorToSeparator(' ', '_')))); $text = $inflector->filter(array('text' => $text)); return $text; }
public function generateSlug($rawSlug) { $inflector = new Zend_Filter_Inflector(':slug'); $inflector->setRules(array(':slug' => array(new Zend_Filter_StringToLower(), new Zend_Filter_StringTrim(), new Zend_Filter_StripTags(), new Zend_Filter_Word_DashToSeparator(), new Zend_Filter_PregReplace(array('match' => '/[^A-Za-z0-9]/', 'replace' => ' ')), new Zend_Filter_Alnum(true), new Zend_Filter_Word_SeparatorToDash()))); $slug = $inflector->filter(array('slug' => $rawSlug)); return $slug; }
/** * Retrieves the view renderer object * * @return Zend_Controller_Action_Helper_ViewRenderer|null * @throws Glitch_Application_Resource_Exception */ public function getViewRenderer() { if (null === $this->_viewRenderer) { // Pull in the front controller; bootstrap first if necessary $this->_bootstrap->bootstrap('FrontController'); $front = $this->_bootstrap->getResource('FrontController'); // Ignore if no view renderer is to be used if ($front->getParam('noViewRenderer')) { return null; } // Get existing renderer, if any, or create a new one $this->_viewRenderer = Zend_Controller_Action_HelperBroker::hasHelper('viewRenderer') ? Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer') : new $this->_className(null, $this->getOptions()); // Dynamic class loading; perform sanity check if (!$this->_viewRenderer instanceof Zend_Controller_Action_Helper_ViewRenderer) { throw new Glitch_Application_Resource_Exception('Class is not a valid view renderer instance'); } // Register the view as the default view for handling view scripts $this->_bootstrap->bootstrap('View'); $view = $this->_bootstrap->getResource('View'); $this->_viewRenderer->setView($view); // It is paramount to set this base path spec: ZF otherwise uses its own // spec, causing it to create a path to a conventional ZF-style directory $this->_viewRenderer->setViewBasePathSpec(':module/' . Glitch_View::PATH_VIEW); // Set empty inflector settings: all path translations are handled by the custom dispatcher $inflector = new Zend_Filter_Inflector(); $inflector->addRules(array(':module' => array(), ':controller' => array(), ':action' => array())); $this->_viewRenderer->setInflector($inflector, true); if (!Zend_Controller_Action_HelperBroker::hasHelper('viewRenderer')) { Zend_Controller_Action_HelperBroker::addHelper($this->_viewRenderer); } } return $this->_viewRenderer; }
/** * Inflektor pro ziskani nazvu atributu * camelCase -> under_score * * @param string $columnName * @return string */ protected function _transformColumn($columnName) { $inflector = new Zend_Filter_Inflector(":string"); $inflector->setRules(array(':string' => array('Word_CamelCaseToUnderscore', 'StringToLower'))); $columnName = $inflector->filter(array('string' => $columnName)); return $columnName; }
/** * Uses Zend's inflector rules to convert from class names to url segments * * @param string $name * @return string */ protected function _dasherise($name) { $name = str_replace('Action', '', $name); $inflector = new Zend_Filter_Inflector(':name'); $inflector->setRules(array(':name' => array('Word_CamelCaseToDash', 'StringToLower'))); return $inflector->filter(array('name' => $name)); }
protected function _initView() { // Start initail view $this->bootstrap('layout'); $config = $this->getOption('views'); $resources = $this->getOption('resources'); $view = new Zend_View(); if (isset($resources['layout']['layoutPath'])) { $view->assign('layoutRootPath', $resources['layout']['layoutPath']); } $this->bootstrap('db'); Zend_Loader::loadClass('Ht_Utils_SystemSetting'); $sysSetting = Ht_Utils_SystemSetting::getSettings(); $view->assign('sysSetting', $sysSetting); $view->assign('profile', Zend_Auth::getInstance()->getIdentity()); Zend_Loader::loadClass("Ht_Model_SystemSetting"); $this->setSystemLogConfiguration($sysSetting); // use the viewrenderer to keep the code DRY // instantiate and add the helper in one go $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer'); $viewRenderer->setView($view); $viewRenderer->setViewSuffix('phtml'); // add it to the action helper broker Zend_Controller_Action_HelperBroker::addHelper($viewRenderer); /** * Set inflector for Zend_Layout */ $inflector = new Zend_Filter_Inflector(':script.:suffix'); $inflector->addRules(array(':script' => array('Word_CamelCaseToDash', 'StringToLower'), 'suffix' => 'phtml')); // Initialise Zend_Layout's MVC helpers $this->getResource('layout')->setLayoutPath(realpath($resources['layout']['layoutPath']))->setView($view)->setContentKey('content')->setInflector($inflector); return $this->getResource('layout')->getView(); }
/** * Get path inflector * @return Zend_Filter_Inflector */ public static function getInflector() { if (null === self::$_inflector) { $inflector = new Zend_Filter_Inflector(); $inflector->addRules(array(':module' => array('Word_CamelCaseToDash', 'StringToLower'), ':controller' => array('Word_CamelCaseToDash', new Zend_Filter_Word_UnderscoreToSeparator('/'), 'StringToLower', new Zend_Filter_PregReplace('/\\./', '-')), ':action' => array('Word_CamelCaseToDash', new Zend_Filter_PregReplace('#[^a-z0-9' . preg_quote('/', '#') . ']+#i', '-'), 'StringToLower')))->setTarget('../application/modules/:module/views/scripts/:controller/:action.xsl'); self::setInflector($inflector); } return self::$_inflector; }
/** * Get Inflector to use determing correct class name * * @return Zend_Filter_Inflector */ public function getInflector() { if (null === $this->_inflector) { $filters = array('Word_DashToCamelCase', new Zend_Filter_Callback('ucfirst')); $inflector = new Zend_Filter_Inflector(':module_Model_Service_:name'); $inflector->setRules(array(':module' => $filters, ':name' => $filters)); $this->_inflector = $inflector; } return $this->_inflector; }
public function __construct($config = array()) { parent::__construct($config); // strip filename_orig from weird characters and transform underscores to camelcase $pattern = '/(.*[\\\\\\/])?(.*)$/'; preg_match($pattern, $this->filename_orig, $matches); $sanatized = str_replace(array(' ', ':', '*', '?', '"', '<', '>', '|'), '_', $matches[2]); $inflector = new Zend_Filter_Inflector(':name'); $inflector->setRules(array(':name' => array('Word_UnderscoreToCamelCase'))); $filtered = $inflector->filter(array('name' => $sanatized)); $this->filename_orig = $filtered; }
/** * Render layout * * Sets internal script path as last path on script path stack, assigns * layout variables to view, determines layout name using inflector, and * renders layout view script. * * $name will be passed to the inflector as the key 'script'. * * @param mixed $name * @return mixed */ public function render($name = null) { if (null === $name) { $name = $this->getLayout(); } if ($this->inflectorEnabled() && (null !== ($inflector = $this->getInflector()))) { $name = $this->_inflector->filter(array('script' => $name)); } $view = $this->getView(); if (null !== ($path = $this->getViewScriptPath())) { if (method_exists($view, 'addScriptPath')) { $view->addScriptPath($path); } else { $view->setScriptPath($path); } } elseif (null !== ($path = $this->getViewBasePath())) { $view->addBasePath($path, $this->_viewBasePrefix); } return $view->render($name); }
/** * Get inflector * * @return Zend_Filter_Inflector */ public function getInflector() { if (null === $this->_inflector) { $this->_inflector = new Zend_Filter_Inflector(); $this->_inflector->addRules(array(':module' => array('Word_CamelCaseToDash', 'StringToLower'), ':controller' => array('Word_CamelCaseToDash', new Zend_Filter_Word_UnderscoreToSeparator('/'), 'StringToLower', new Zend_Filter_PregReplace('/\\./', '-')), ':action' => array('Word_CamelCaseToDash', new Zend_Filter_PregReplace('#[^a-z0-9' . preg_quote('/', '#') . ']+#i', '-'), 'StringToLower'))); } return $this->_inflector; }
/** * Set inflector * * @param Zend_Filter_Inflector $inflector * @param boolean $reference Whether the moduleDir, target, and suffix should be set as references to ViewRenderer properties * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface */ public function setInflector(Zend_Filter_Inflector $inflector, $reference = false) { $this->_inflector = $inflector; if ($reference) { $this->_inflector->setStaticRuleReference('suffix', $this->_viewSuffix)->setStaticRuleReference('moduleDir', $this->_moduleDir)->setTargetReference($this->_inflectorTarget); } return $this; }
/** * Render layout * * Sets internal script path as last path on script path stack, assigns * layout variables to view, determines layout name using inflector, and * renders layout view script. * * $name will be passed to the inflector as the key 'script'. * * @param mixed $name * @return mixed */ public function render($name = null) { if (null === $name) { $name = $this->getLayout(); } if ($this->inflectorEnabled() && null !== ($inflector = $this->getInflector())) { $name = $this->_inflector->filter(array('script' => $name)); } $view = $this->getView(); if (null !== ($path = $this->getLayoutPath())) { $view->addScriptPath($path); } return $view->render($name); }
public function testSetConfigSetsStateAndRules() { $config = $this->getConfig(); $inflector = new Zend_Filter_Inflector(); $inflector->setConfig($config); $this->_testOptions($inflector); }
/** * @issue ZF-2964 */ public function testNoInflectableTarget() { $inflector = new Zend_Filter_Inflector('abc'); $inflector->addRules(array(':foo' => array())); $this->assertEquals($inflector->filter(array('fo' => 'bar')), 'abc'); }
public function testCustomInflectorUsesViewRendererTargetWhenPassedInWithReferenceFlag() { $this->request->setModuleName('bar')->setControllerName('index')->setActionName('test'); $controller = new Bar_IndexController($this->request, $this->response, array()); $this->helper->view->addBasePath($this->basePath . '/_files/modules/bar/views'); require_once 'Zend/Filter/PregReplace.php'; require_once 'Zend/Filter/Word/UnderscoreToSeparator.php'; $inflector = new Zend_Filter_Inflector('test.phtml'); $inflector->addRules(array(':module' => array('Word_CamelCaseToDash', 'stringToLower'), ':controller' => array('Word_CamelCaseToDash', new Zend_Filter_Word_UnderscoreToSeparator(DIRECTORY_SEPARATOR), 'StringToLower'), ':action' => array('Word_CamelCaseToDash', new Zend_Filter_PregReplace('/[^a-z0-9]+/i', '-'), 'StringToLower'))); $this->helper->setInflector($inflector, true); $this->helper->render(); $body = $this->response->getBody(); $this->assertContains('Rendered index/test.phtml in bar module', $body); }
/** * Inflect the name using the inflector filter * * Changes camelCaseWord to Camel_Case_Word * * @param string $name The name to inflect * @return string The inflected string */ private function _getInflected($name) { $inflector = new Zend_Filter_Inflector(':class'); $inflector->setRules(array(':class' => array('Word_CamelCaseToUnderscore'))); return ucfirst($inflector->filter(array('class' => $name))); }
/** * Returns the template name. * * @return string */ public function getTemplateName() { $request = $this->viewRenderer->Action()->Request(); $dispatcher = $this->viewRenderer->Front()->Dispatcher(); $moduleName = $dispatcher->formatModuleName($request->getModuleName()); $controllerName = $dispatcher->formatControllerName($request->getControllerName()); $inflector = new Zend_Filter_Inflector($this->target); $inflector->setRules($this->filterRules); $inflector->setThrowTargetExceptionsOn(false); $fileNames = (array) $request->getParam('file', $this->defaultFile); $templateNames = array(); foreach ($fileNames as $fileName) { $fileName = ltrim(dirname($fileName) . '/' . basename($fileName, '.js'), '/.'); if (empty($fileName)) { continue; } $templateNames[] = $inflector->filter(array('module' => $moduleName, 'controller' => $controllerName, 'file' => $fileName)); } $count = count($templateNames); if ($count === 0) { return null; } elseif ($count === 1) { return $templateNames[0]; } else { return 'snippet:string:{include file="' . implode("\"}\n{include file=\"", $templateNames) . '"}'; } }
/** * Submit Feed to website * * @return */ public function submitAction() { $this->view->keywords = implode('', array('ifphp', 'news aggragator', 'submit rss feed')); $form = $this->getSubmitForm(); //setup the available categories $categories = new Categories(); $this->view->categories = $categories->getAll(); foreach ($this->view->categories as $category) { $form->category->addMultiOptions(array($category->id => $category->title)); } //setup the available languages $languages = new Languages(); $this->view->languages = $languages->getAll(); foreach ($this->view->languages as $language) { $form->language->addMultiOptions(array($language->id => $language->title)); } //if it's a post submit let's save the information if ($this->getRequest()->isPost() && $form->isValid($_POST)) { //TODO this shoudl be wrapped in a transaction //create user $users = new Users(); //check for existance of a user $user = $users->getByEmail($form->email->getValue()); if (!$user) { $user = $users->createRow(); $user->email = $form->email->getValue(); $user->fullName = $form->fullname->getValue(); $user->username = '******'; //TODO put real username here eventually $user->password = ''; $user->roleId = Role::SUBMITTER; $user->statusId = Status::ACTIVE; $user->save(); } try { $feedSource = Zend_Feed_Reader::import($form->url->getValue()); //convert/parse feed to strongly typed objects $defaultFilterChain = new Zend_Filter(); $defaultFilterChain->addFilter(new Ifphp_Filter_XSSClean()); $defaultFilterChain->addFilter(new Zend_Filter_StringTrim()); $defaultFilterChain->addFilter(new Zend_Filter_StripTags()); $feeds = new Feeds(); $feed = $feeds->createRow(); $feed->token = md5(uniqid($user->id)); $feed->url = $defaultFilterChain->filter($form->url->getValue()); $feed->title = $defaultFilterChain->filter($feedSource->getTitle()); $inflector = new Zend_Filter_Inflector(':title'); $inflector->setRules(array(':title' => array('Word_SeparatorToDash', 'StringToLower', 'HtmlEntities'))); $feed->slug = $inflector->filter(array('title' => $feed->title)); $feed->description = $defaultFilterChain->filter($feedSource->getDescription()); $feed->categoryId = $form->category->getValue(); $feed->languageId = $form->language->getValue(); $feed->siteUrl = $form->siteUrl->getValue(); $feed->statusId = Status::PENDING; $feed->userId = $user->id; $feed->refreshRate = 120; //TODO this is sometimes stored in the feed $feed->save(); //parse feed $posts = new Posts(); foreach ($feedSource as $feedEntry) { $post = $posts->createRow(); $post->title = $defaultFilterChain->filter($feedEntry->getTitle()); $post->description = $defaultFilterChain->filter($feedEntry->getDescription()); $post->link = $defaultFilterChain->filter($feedEntry->getPermaLink()); $post->feedId = $feed->id; $date = new Zend_Date($feedEntry->getDateModified()); $post->publishDate = $date->toValue(); $post->save(); } // $this->_flashMessenger->addMessage('Your feed has been added to the site. Your ping back url is http://ifphp.com/feed/ping-back/'.$feed->token); $this->sendActivationEmail($feed, $user); $this->_forward('submit-thank-you'); } catch (Zend_Feed_Exception $error) { $form->url->markAsError(); Zend_Registry::getInstance()->logger->err($error); return; } } $this->view->form = $form; }
public function preDispatch() { $request = $this->getRequest(); if (Axis_Area::isFrontend()) { if (!Axis::getCustomerId() && $this->getActionController() instanceof Axis_Account_Controller_Abstract) { $request->setModuleName('Axis_Account')->setControllerName('auth')->setActionName('index')->setDispatched(false); } return; } if (!Axis_Area::isBackend()) { return; } $auth = Zend_Auth::getInstance(); $auth->setStorage(new Zend_Auth_Storage_Session('admin')); if (in_array($request->getControllerName(), array('auth', 'forgot')) && 'Axis_Admin' === $request->getModuleName()) { return; } if (!$auth->hasIdentity()) { if ($request->isXmlHttpRequest()) { Axis::message()->addError(Axis::translate('admin')->__('Your session has been expired. Please relogin')); $jsonHelper = Zend_Controller_Action_HelperBroker::getStaticHelper('json'); $jsonHelper->sendFailure(); return; } $request->setModuleName('Axis_Admin')->setControllerName('auth')->setActionName('index')->setDispatched(false); return; } $user = Axis::single('admin/user')->find($auth->getIdentity())->current(); if (!$user) { $request->setModuleName('Axis_Admin')->setControllerName('auth')->setActionName('logout')->setDispatched(false); return; } $acl = new Zend_Acl(); // add resources $resources = Axis::model('admin/acl_resource')->toFlatTree(); foreach ($resources as $resource) { $parent = $resource['parent']; try { $acl->addResource($resource['id'], $parent); } catch (Zend_Acl_Exception $e) { Axis::message()->addError($e->getMessage()); } } //add role(s) $role = (string) $user->role_id; $acl->addRole($role); //add permission $rowset = Axis::single('admin/acl_rule')->select('*')->where('role_id = ?', $role)->fetchRowset(); foreach ($rowset as $row) { if (!$acl->has($row->resource_id)) { // $row->delete(); // remove invalid rule continue; } $action = 'deny'; if ('allow' === $row->permission) { $action = 'allow'; } try { $acl->{$action}($row->role_id, $row->resource_id); } catch (Zend_Acl_Exception $e) { Axis::message()->addError($e->getMessage()); } } Zend_View_Helper_Navigation_HelperAbstract::setDefaultAcl($acl); Zend_View_Helper_Navigation_HelperAbstract::setDefaultRole($role); if (in_array($request->getControllerName(), array('error')) && 'Axis_Admin' === $request->getModuleName()) { return; } //get current resource by request $request = $this->getRequest(); $inflector = new Zend_Filter_Inflector(); $resource = $inflector->addRules(array(':module' => array('Word_CamelCaseToDash', new Zend_Filter_Word_UnderscoreToSeparator('/'), 'StringToLower'), ':controller' => array('Word_CamelCaseToDash', 'StringToLower', new Zend_Filter_PregReplace('/admin_/', '')), ':action' => array('Word_CamelCaseToDash', 'StringToLower')))->setTarget('admin/:module/:controller/:action')->filter($request->getParams()); if (!$acl->has($resource) || $acl->isAllowed($role, $resource)) { return; } if ($request->isXmlHttpRequest()) { Axis::message()->addError(Axis::translate('admin')->__('You have no permission for this operation')); $jsonHelper = Zend_Controller_Action_HelperBroker::getStaticHelper('json'); $jsonHelper->sendFailure(); return; } $request->setModuleName('Axis_Admin')->setControllerName('error')->setActionName('access-denied')->setDispatched(false); }
/** * Factory method that runs a given migration. * * @param string $fileName * @param string $direction */ public static function run($fileName, $direction, $verbose) { if ($direction == 'drop') { // We create a fake instance here since drop is not associated // with any real migration class. $dropper = new self('', __CLASS__); $dropper->migrate('drop'); return; } $inflector = new Zend_Filter_Inflector(':class', array(':class' => 'Word_DashToCamelCase')); preg_match('/(\\d+)_(.+)\\.php/', basename($fileName), $matches); $version = $matches[1]; $class = $inflector->filter(array(':class' => $matches[2])); include $fileName; if (class_exists($class)) { $migration = new $class($version, $class, $verbose); $migration->migrate($direction); $migration->updateInstalledVersions($version, $direction); } else { $msg = "Class '{$class}' is not present in the migration file"; $this->write($msg); throw new Svenax_Migration_Exception($msg); } }
/** * @todo Remove when done */ public function fixAction() { $posts = new Posts(); $tposts = $posts->fetchAll($posts->select()->where('id > 0')); $defaultFilterChain = new Zend_Filter(); $defaultFilterChain->addFilter(new Ifphp_Filter_XSSClean()); $defaultFilterChain->addFilter(new Zend_Filter_StringTrim()); $defaultFilterChain->addFilter(new Zend_Filter_StripTags()); $defaultFilterChain->addFilter(new Zend_Filter_HtmlEntities(array('quotestyle' => ENT_QUOTES, 'charset' => 'UTF-8'))); $defaultFilterChain->addFilter(new Ifphp_Filter_HtmlEntityNames()); foreach ($tposts as $post) { $post->title = $defaultFilterChain->filter($post->title); $post->description = $defaultFilterChain->filter($post->description); $post->feedId = $defaultFilterChain->filter($post->feedId); $post->link = $defaultFilterChain->filter($post->link); $post->publishDate = $post->publishDate; // Zend_Debug::dump($post->description); $post->save(); } $feeds = new Feeds(); $tfeeds = $feeds->fetchAll($feeds->select()->where('id > 0')); $inflector = new Zend_Filter_Inflector(':title'); $inflector->setRules(array(':title' => array('Word_SeparatorToDash', 'StringToLower', 'HtmlEntities'))); foreach ($tfeeds as $feed) { $feed->title = $defaultFilterChain->filter($feed->title); $feed->description = $defaultFilterChain->filter($feed->description); $feed->slug = $inflector->filter(array('title' => $feed->title)); $feed->save(); } die; }
public static function underscoreToCamelCase($string) { $inflector = new Zend_Filter_Inflector(':string'); $inflector->setRules(array(':string' => 'Word_UnderscoreToCamelCase')); return $inflector->filter(array('string' => $string)); }
/** * @issue ZF-2522 */ public function testTestForFalseInConstructorParams() { $inflector = new Zend_Filter_Inflector('something', array(), false, false); $this->assertFalse($inflector->isThrowTargetExceptionsOn()); $this->assertEquals($inflector->getTargetReplacementIdentifier(), ':'); $inflector = new Zend_Filter_Inflector('something', array(), false, '#'); $this->assertEquals($inflector->getTargetReplacementIdentifier(), '#'); }
/** * Returns the template name. * * @return string */ public function getTemplateName() { $request = $this->viewRenderer->Action()->Request(); $dispatcher = $this->viewRenderer->Front()->Dispatcher(); $moduleName = $dispatcher->formatModuleName($request->getModuleName()); $controllerName = $dispatcher->formatControllerName($request->getControllerName()); $inflector = new Zend_Filter_Inflector($this->target); $inflector->setRules($this->filterRules); $inflector->setThrowTargetExceptionsOn(false); $fileName = $request->getParam('file', $this->defaultFile); $fileName = ltrim(dirname($fileName) . '/' . basename($fileName, '.js'), '/.'); if (empty($fileName)) { return null; } $templateName = $inflector->filter(array('module' => $moduleName, 'controller' => $controllerName, 'file' => $fileName)); return $templateName; }
public function extendsAction() { $request = $this->Request(); $moduleName = 'backend'; $controllerName = $this->Request()->getParam('baseController'); $inflector = new Zend_Filter_Inflector(':module/:controller/:file:suffix'); $inflector->setRules(array( ':module' => array('Word_CamelCaseToUnderscore', 'StringToLower'), ':controller' => array('Word_CamelCaseToUnderscore', 'StringToLower'), ':file' => array('Word_CamelCaseToUnderscore', 'StringToLower'), 'suffix' => '.js' )); $inflector->setThrowTargetExceptionsOn(false); $fileNames = (array) $request->getParam('file'); if(empty($fileNames)) { return; } $this->Response()->setHeader('Content-Type', 'application/javascript; charset=utf-8', true); $template = 'snippet:string:'; $this->View()->Engine()->setCompileId($this->View()->Engine()->getCompileId() . '_' . $this->Request()->getControllerName()); foreach($fileNames as $fileName) { $fileName = ltrim(dirname($fileName) . '/' . basename($fileName, '.js'), '/.'); if (empty($fileName)) { continue; } $templateBase = $inflector->filter(array( 'module' => $moduleName, 'controller' => $controllerName, 'file' => $fileName) ); $templateExtend = $inflector->filter(array( 'module' => $moduleName, 'controller' => $this->Request()->getControllerName(), 'file' => $fileName) ); if($this->View()->templateExists($templateBase)) { $template .= '{include file="' . $templateBase. '"}' . "\n"; } if($this->View()->templateExists($templateExtend)) { $template .= '{include file="' . $templateExtend. '"}' . "\n"; } } $toFind = $this->Request()->getParam('find'); $toReplace = $this->Request()->getParam('replace'); $toFind = rtrim($toFind, '.') . '.'; $toReplace = rtrim($toReplace, '.') . '.'; $this->View()->setTemplate(); $template = $this->View()->fetch($template); $template = str_replace($toFind, $toReplace, $template); echo $template; }
protected function _initInflectors() { $camelCase = new Zend_Filter_Inflector(':key'); $camelCase->setRules(array(':key' => array('Word_CamelCaseToUnderscore', 'StringToLower'))); array_push($this->_inflectors, $camelCase); }