当前位置: 首页>>代码示例>>PHP>>正文


PHP ItemInterface::isCurrent方法代码示例

本文整理汇总了PHP中Knp\Menu\ItemInterface::isCurrent方法的典型用法代码示例。如果您正苦于以下问题:PHP ItemInterface::isCurrent方法的具体用法?PHP ItemInterface::isCurrent怎么用?PHP ItemInterface::isCurrent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Knp\Menu\ItemInterface的用法示例。


在下文中一共展示了ItemInterface::isCurrent方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: matchItem

 /**
  * Checks whether an item is current.
  *
  * If the voter is not able to determine a result,
  * it should return null to let other voters do the job.
  *
  * @param ItemInterface $item
  *
  * @return boolean|null
  */
 public function matchItem(ItemInterface $item)
 {
     if ($item->getExtra('link', false) && $this->parentControl) {
         $presenter = $this->parentControl->getPresenter(true);
         $item->setCurrent(call_user_func_array(array($presenter, 'isLinkCurrent'), $item->getExtra('link')));
         return $item->isCurrent();
     }
     return null;
 }
开发者ID:TomasVotruba,项目名称:SmfMenu,代码行数:19,代码来源:PresenterVoter.php

示例2: isCurrent

 public function isCurrent(ItemInterface $item)
 {
     $current = $item->isCurrent();
     if (null !== $current) {
         return $current;
     }
     if ($this->cache->contains($item)) {
         return $this->cache[$item];
     }
     foreach ($this->voters as $voter) {
         $current = $voter->matchItem($item);
         if (null !== $current) {
             break;
         }
     }
     $current = (bool) $current;
     $this->cache[$item] = $current;
     return $current;
 }
开发者ID:andrewkrug,项目名称:repucaution,代码行数:19,代码来源:Matcher.php

示例3: renderLink

    /**
     * Renders the link in a a tag with link attributes or
     * the label in a span tag with label attributes
     *
     * Tests if item has a an uri and if not tests if it's
     * the current item and if the text has to be rendered
     * as a link or not.
     *
     * @param \Knp\Menu\ItemInterface $item The item to render the link or label for
     * @param array $options The options to render the item
     * @return string
     */
    public function renderLink(ItemInterface $item, array $options = array())
    {
        $options = array_merge($this->getDefaultOptions(), $options);

        if ($item->getUri() && (!$item->isCurrent() || $options['currentAsLink'])) {
            $text = sprintf('<a href="%s"%s>%s</a>', $this->escape($item->getUri()), $this->renderHtmlAttributes($item->getLinkAttributes()), $this->escape($item->getLabel()));
        } else {
            $text = sprintf('<span%s>%s</span>', $this->renderHtmlAttributes($item->getLabelAttributes()), $this->escape($item->getLabel()));
        }

        return $this->format($text, 'link', $item->getLevel());
    }
开发者ID:naderman,项目名称:KnpMenu,代码行数:24,代码来源:ListRenderer.php

示例4: renderLink

 /**
  * Renders the link in a a tag with link attributes or
  * the label in a span tag with label attributes
  *
  * Tests if item has a an uri and if not tests if it's
  * the current item and if the text has to be rendered
  * as a link or not.
  *
  * @param \Knp\Menu\ItemInterface $item The item to render the link or label for
  * @param array $options The options to render the item
  * @return string
  */
 protected function renderLink(ItemInterface $item, array $options = array())
 {
     if ($item->getUri() && (!$item->isCurrent() || $options['currentAsLink'])) {
         $text = $this->renderLinkElement($item, $options);
     } else {
         $text = $this->renderSpanElement($item, $options);
     }
     return $this->format($text, 'link', $item->getLevel(), $options);
 }
开发者ID:bamper,项目名称:symfony-ecommerce,代码行数:21,代码来源:CustomRenderer.php

示例5: toArray

 /**
  * @param ItemInterface $item
  * @param integer|null  $depth the depth until which children should be exported (null means unlimited)
  *
  * @return array
  */
 public function toArray(ItemInterface $item, $depth = null)
 {
     $array = array('name' => $item->getName(), 'label' => $item->getLabel(), 'uri' => $item->getUri(), 'attributes' => $item->getAttributes(), 'labelAttributes' => $item->getLabelAttributes(), 'linkAttributes' => $item->getLinkAttributes(), 'childrenAttributes' => $item->getChildrenAttributes(), 'extras' => $item->getExtras(), 'display' => $item->isDisplayed(), 'displayChildren' => $item->getDisplayChildren(), 'current' => $item->isCurrent());
     // export the children as well, unless explicitly disabled
     if (0 !== $depth) {
         $childDepth = null === $depth ? null : $depth - 1;
         $array['children'] = array();
         foreach ($item->getChildren() as $key => $child) {
             $array['children'][$key] = $this->toArray($child, $childDepth);
         }
     }
     return $array;
 }
开发者ID:andrewkrug,项目名称:repucaution,代码行数:19,代码来源:MenuManipulator.php


注:本文中的Knp\Menu\ItemInterface::isCurrent方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。