當前位置: 首頁>>代碼示例>>PHP>>正文


PHP AbstractPage::set方法代碼示例

本文整理匯總了PHP中Zend\Navigation\Page\AbstractPage::set方法的典型用法代碼示例。如果您正苦於以下問題:PHP AbstractPage::set方法的具體用法?PHP AbstractPage::set怎麽用?PHP AbstractPage::set使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Zend\Navigation\Page\AbstractPage的用法示例。


在下文中一共展示了AbstractPage::set方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: htmlify

 /**
  * {@inheritDoc}
  */
 public function htmlify(AbstractPage $page, $escapeLabel = true, $addClassToListItem = false)
 {
     $renderer = $this->getView();
     if ($partial = $page->get('partial')) {
         return $renderer->partial($partial, compact('page', 'escapeLabel', 'addClassToListItem'));
     }
     // get attribs for element
     $attribs = ['id' => $page->getId()];
     if ($title = $page->getTitle()) {
         $attribs['title'] = $this->translate($title, $page->getTextDomain());
     }
     if ($pageAttribs = $page->get('attribs')) {
         $attribs = array_merge($pageAttribs, $attribs);
     }
     if ($addClassToListItem === false) {
         if (!empty($attribs['class'])) {
             $attribs['class'] .= " {$page->getClass()}";
         } else {
             $attribs['class'] = $page->getClass();
         }
     }
     if (($label = $page->get('label_helper')) && ($helper = $this->view->plugin($label))) {
         if (method_exists($helper, 'setTranslatorTextDomain')) {
             $helper->setTranslatorTextDomain($page->getTextDomain());
         }
         $label = $helper();
     } elseif ($label = $page->getLabel()) {
         $label = $this->translate($label, $page->getTextDomain());
     }
     $html = '';
     if ($label) {
         if ($escapeLabel === true) {
             /* @var $escaper \Zend\View\Helper\EscapeHtml */
             $escaper = $this->view->plugin('escapeHtml');
             $html .= $escaper($label);
         } else {
             $html .= $label;
         }
     }
     $params = $replacedParams = $page->get('params');
     if ($placeholders = $page->get('link_placeholders')) {
         foreach ($placeholders as $name => $value) {
             if (!isset($replacedParams[$name])) {
                 $replacedParams[$name] = $value;
             }
         }
     }
     if ($replacedParams && ($placeholders = $this->getLinkPlaceholders())) {
         foreach ($replacedParams as $name => $value) {
             if (isset($placeholders[$value])) {
                 $replacedParams[$name] = $placeholders[$value];
             }
         }
     }
     $page->set('params', $replacedParams);
     // does page have a href
     if ($href = $page->getHref()) {
         $element = 'a';
         $attribs['href'] = $page->get('uri') ?: $href;
         $attribs['target'] = $page->getTarget();
     } else {
         $element = 'span';
     }
     $page->set('params', $params);
     if ($ns = $page->get($this->decoratorNamespace)) {
         $html = $renderer->decorator($html, $ns);
     }
     $html = "<{$element}{$this->htmlAttribs($attribs)}>{$html}</{$element}>";
     return $html;
 }
開發者ID:coolms,項目名稱:common,代碼行數:73,代碼來源:Menu.php


注:本文中的Zend\Navigation\Page\AbstractPage::set方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。