yiiapi/framework/zii/widgets/CMenu.php
(开头部分) 12KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
/**
* CMenu class file.
*
* @author Jonah Turnquist <poppitypop@gmail.com>
* @author Qiang Xue <qiang.xue@gmail.com>
* @link http://www.yiiframework.com/
* @copyright 2008-2013 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
/**
* CMenu displays a multi-level menu using nested HTML lists.
*
* The main property of CMenu is {@link items}, which specifies the possible items in the menu.
* A menu item has three main properties: visible, active and items. The "visible" property
* specifies whether the menu item is currently visible. The "active" property specifies whether
* the menu item is currently selected. And the "items" property specifies the child menu items.
*
* The following example shows how to use CMenu:
* <pre>
* $this->widget('zii.widgets.CMenu', array(
* 'items'=>array(
* // Important: you need to specify url as 'controller/action',
* // not just as 'controller' even if default action is used.
* array('label'=>'Home', 'url'=>array('site/index')),
* // 'Products' menu item will be selected no matter which tag parameter value is since it's not specified.
* array('label'=>'Products', 'url'=>array('product/index'), 'items'=>array(
* array('label'=>'New Arrivals', 'url'=>array('product/new', 'tag'=>'new')),
* array('label'=>'Most Popular', 'url'=>array('product/index', 'tag'=>'popular')),
* )),
* array('label'=>'Login', 'url'=>array('site/login'), 'visible'=>Yii::app()->user->isGuest),
* ),
* ));
* </pre>
*
*
* @author Jonah Turnquist <poppitypop@gmail.com>
* @author Qiang Xue <qiang.xue@gmail.com>
* @package zii.widgets
* @since 1.1
*/
class CMenu extends CWidget
{
/**
* @var array list of menu items. Each menu item is specified as an array of name-value pairs.
* Possible option names include the following:
* <ul>
* <li>label: string, optional, specifies the menu item label. When {@link encodeLabel} or own encodeLabel option is true, the label
* will be HTML-encoded. If the label is not specified, it defaults to an empty string.</li>
* <li>encodeLabel: boolean whether the label for menu item should be HTML-encoded.
* When this option is set, it will override the global setting {@link encodeLabel}. This option has been available since version 1.1.15.</li>
* <li>url: string or array, optional, specifies the URL of the menu item. It is passed to {@link CHtml::normalizeUrl}
* to generate a valid URL. If this is not set, the menu item will be rendered as a span text.</li>
* <li>visible: boolean, optional, whether this menu item is visible. Defaults to true.
* This can be used to control the visibility of menu items based on user permissions.</li>
* <li>items: array, optional, specifies the sub-menu items. Its format is the same as the parent items.</li>
* <li>active: boolean, optional, whether this menu item is in active state (currently selected).
* If a menu item is active and {@link activeClass} is not empty, its CSS class will be appended with {@link activeClass}.
* If this option is not set, the menu item will be set active automatically when the current request
后面还有 269 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
