Yii Framework v1.1.10 绫诲弬鑰

CBreadcrumbs

zii.widgets
缁ф壙 class CBreadcrumbs » CWidget » CBaseController » CComponent
婧愯嚜 1.1
鐗堟湰 $Id: CBreadcrumbs.php 2799 2011-01-01 19:31:13Z qiang.xue $
婧愮爜 framework/zii/widgets/CBreadcrumbs.php
CBreadcrumbs鏄剧ず涓涓敱褰撳墠椤甸潰鍦ㄧ綉绔欎腑鐨勪綅缃粍鎴愮殑閾炬帴鍒楄〃銆

渚嬪锛屽儚杩欐牱鈥淗ome > Sample Post > Edit鈥 鎰忔濇槸鐢ㄦ埛姝e湪璁块棶 鈥淪ample Post鈥濅笅鐨勨渆dit鈥濋〉闈€備粬鍙互鐐瑰嚮鈥淪ample Post鈥濊闂淪ample Post鈥濋〉闈 鎴栫偣鍑烩淗ome鈥濊繑鍥炩淗ome鈥濋〉闈€

浣跨敤 CBreadcrumbs 鏃堕渶瑕佽缃links灞炴ф潵閰嶇疆鏄剧ず鐨勯摼鎺ワ紝 渚嬪锛

$this->widget('zii.widgets.CBreadcrumbs', array(
    'links'=>array(
        'Sample post'=>array('post/view', 'id'=>12),
        'Edit',
    ),
));


鍥犱负breadcrumbs涓鑸湪姣忎釜椤甸潰閮戒細鏄剧ず锛屾墍浠ユ垜浠渶鍚庢妸瀹冩斁鍦ㄥ竷灞锛坙ayout锛夋枃浠朵腑. 鎴戜滑鍙互灏嗏渂readcrumbs鈥濆睘鎬у畾涔夊湪鎺у埗鍣ㄧ殑鍩虹被涓紝鐒跺悗鍦ㄥ竷灞锛坙ayout锛夋枃浠剁殑widget涓皟鐢紝 濡備笅锛

$this->widget('zii.widgets.CBreadcrumbs', array(
    'links'=>$this->breadcrumbs,
));


鐒跺悗鍦ㄦ瘡涓鍥句腑鍙渶瀹氫箟鈥渂readcrumbs鈥濆氨鍙互浜嗐

鍏叡灞炴

闅愯棌缁ф壙灞炴

灞炴绫诲瀷鎻忚堪瀹氫箟鍦
actionPrefix string actions鐨処D鐨勫墠缂銆 褰撳井浠跺湪CController::actions涓0鏄庝簡 鍔ㄤ綔鎻愪緵鑰咃紝鍙互涓哄叾鍔ㄤ綔鐨処D鎸囧畾鍓嶇紑浠ュ尯鍒 浜庡埆鐨勫井浠舵垨鎺у埗鍣ㄣ傚綋寰欢鐢ㄤ簬鎺у埗鍣 鐨勮鍥句腑鏃讹紝蹇呴』閰嶇疆鍚屾牱鐨勫墠缂銆 CWidget
controller CController 杩斿洖姝ゅ井浠舵墍灞炵殑鎺у埗鍣ㄣ CWidget
encodeLabel boolean 鏄惁瀵归摼鎺ョ殑鏂囧瓧杩涜HTML缂栫爜銆 榛樿涓簍rue銆 CBreadcrumbs
htmlOptions array 瀹瑰櫒鐨凥TML灞炴с CBreadcrumbs
id string 杩斿洖姝ゅ井浠剁殑ID銆傚鏋滈渶瑕佺殑璇濓紝灏嗙敓浜т竴涓柊鐨処D骞跺皢鍏惰繑鍥炪 CWidget
owner CBaseController 杩斿洖姝ゅ井浠剁殑鎵鏈夎呮垨鍒涘缓鑰呫 CWidget
separator string breadcrumbs涓摼鎺ヤ箣闂寸殑鍒嗛殧绗︺傞粯璁ゆ槸鈥 » 鈥欍 CBreadcrumbs
skin mixed 寰欢浣跨敤鐨勭毊鑲ょ殑鍚嶇О銆傞粯璁や负鈥渄efault鈥濄 濡傛灉姝ゅ睘鎬ц缃负false锛屽井浠跺皢涓嶄細鏈夌毊鑲よ浣跨敤銆 CWidget
tagName string 瀹瑰櫒鐨勬爣绛俱傞粯璁や负鈥榙iv鈥欍 CBreadcrumbs
viewPath string 杩斿洖鍖呭惈姝ゅ井浠舵墍闇鐨勮鍥炬枃浠剁殑璺緞銆 CWidget

鍏叡鏂规硶

闅愯棌缁ф壙鏂规硶

鏂规硶鎻忚堪瀹氫箟鍦
__call() 濡傛灉绫讳腑娌℃湁璋冪殑鏂规硶鍚嶏紝鍒欒皟鐢ㄨ繖涓柟娉曘 CComponent
__construct() 鏋勯犲櫒銆 CWidget
__get() 杩斿洖涓涓睘鎬у笺佷竴涓簨浠跺鐞嗙▼搴忓垪琛ㄦ垨涓涓涓哄悕绉般 CComponent
__isset() 妫鏌ヤ竴涓睘鎬ф槸鍚︿负null銆 CComponent
__set() 璁剧疆涓涓粍浠剁殑灞炴у笺 CComponent
__unset() 璁剧疆涓涓粍浠剁殑灞炴т负null銆 CComponent
actions() 杩斿洖姝idget浣跨敤鐨勫姩浣滅殑鍒楄〃銆 CWidget
asa() 杩斿洖杩欎釜鍚嶅瓧鐨勮涓哄璞° CComponent
attachBehavior() 闄勫姞涓涓涓哄埌缁勪欢銆 CComponent
attachBehaviors() 闄勫姞涓涓涓哄垪琛ㄥ埌缁勪欢銆 CComponent
attachEventHandler() 涓轰簨浠堕檮鍔犱竴涓簨浠跺鐞嗙▼搴忋 CComponent
beginCache() Begins fragment caching. CBaseController
beginClip() Begins recording a clip. CBaseController
beginContent() Begins the rendering of content that is to be decorated by the specified view. CBaseController
beginWidget() Creates a widget and executes it. CBaseController
canGetProperty() 纭畾灞炴ф槸鍚﹀彲璇汇 CComponent
canSetProperty() 纭畾灞炴ф槸鍚﹀彲鍐欍 CComponent
createWidget() Creates a widget and initializes it. CBaseController
detachBehavior() 浠庣粍浠朵腑鍒嗙涓涓涓恒 CComponent
detachBehaviors() 浠庣粍浠朵腑鍒嗙鎵鏈夎涓恒 CComponent
detachEventHandler() 鍒嗙涓涓瓨鍦ㄧ殑浜嬩欢澶勭悊绋嬪簭銆 CComponent
disableBehavior() 绂佺敤涓涓檮鍔犺涓恒 CComponent
disableBehaviors() 绂佺敤缁勪欢闄勫姞鐨勬墍鏈夎涓恒 CComponent
enableBehavior() 鍚敤涓涓檮鍔犺涓恒 CComponent
enableBehaviors() 鍚敤缁勪欢闄勫姞鐨勬墍鏈夎涓恒 CComponent
endCache() Ends fragment caching. CBaseController
endClip() Ends recording a clip. CBaseController
endContent() Ends the rendering of content. CBaseController
endWidget() Ends the execution of the named widget. CBaseController
evaluateExpression() 璁$畻涓涓狿HP琛ㄨ揪寮忥紝鎴栨牴鎹粍浠朵笂涓嬫枃鎵ц鍥炶皟銆 CComponent
getController() 杩斿洖姝ゅ井浠舵墍灞炵殑鎺у埗鍣ㄣ CWidget
getEventHandlers() 杩斿洖涓涓簨浠剁殑闄勫姞澶勭悊绋嬪簭鍒楄〃銆 CComponent
getId() 杩斿洖姝ゅ井浠剁殑ID銆傚鏋滈渶瑕佺殑璇濓紝灏嗙敓浜т竴涓柊鐨処D骞跺皢鍏惰繑鍥炪 CWidget
getOwner() 杩斿洖姝ゅ井浠剁殑鎵鏈夎呮垨鍒涘缓鑰呫 CWidget
getViewFile() 鏍规嵁瑙嗗浘鍚嶆煡鎵捐鍥炬枃浠躲 CWidget
getViewPath() 杩斿洖鍖呭惈姝ゅ井浠舵墍闇鐨勮鍥炬枃浠剁殑璺緞銆 CWidget
hasEvent() 纭畾涓涓簨浠舵槸鍚﹀畾涔夈 CComponent
hasEventHandler() 妫鏌ヤ簨浠舵槸鍚︽湁闄勫姞鐨勫鐞嗙▼搴忋 CComponent
hasProperty() 纭畾灞炴ф槸鍚﹁瀹氫箟銆 CComponent
init() 鍒濆鍖栨寰欢銆 CWidget
raiseEvent() 鍙戣捣涓涓簨浠躲 CComponent
render() 娓叉煋涓涓鍥俱 CWidget
renderFile() Renders a view file. CBaseController
renderInternal() Renders a view file. CBaseController
run() 娓叉煋閮ㄤ欢鐨勫唴瀹广 CBreadcrumbs
setId() 璁剧疆姝ゅ井浠剁殑ID銆 CWidget
widget() Creates a widget and executes it. CBaseController

灞炴ц缁

encodeLabel 灞炴
public boolean $encodeLabel;

鏄惁瀵归摼鎺ョ殑鏂囧瓧杩涜HTML缂栫爜銆 榛樿涓簍rue銆

public string $homeLink;

breadcrumbs涓殑绗竴涓摼鎺ワ紙涓鑸负涓婚〉閾炬帴锛夈 濡傛灉娌℃湁璁剧疆锛岄粯璁ら摼鎺ヤ负鈥淗ome鈥濇寚鍚CWebApplication::homeUrl銆 濡傛灉灞炴т负false锛屽垯涓嶄細娓叉煋涓婚〉閾炬帴銆

htmlOptions 灞炴
public array $htmlOptions;

瀹瑰櫒鐨凥TML灞炴с

public array $links;

鏄剧ず鍦╞readcrumbs涓殑鎵鏈夐摼鎺ャ備负绌烘椂鍒欎笉浼氭覆鏌撲换浣曞唴瀹广 鍦ㄦ鏁扮粍涓殑姣忎釜key-value瀵归兘浼氫娇鐢 CHtml::link(key, value)鐢熸垚閾炬帴銆 key琛ㄧず閾炬帴鐨勬枃瀛楋紝value鍙互涓簊tring鎴朼rray绫诲瀷 锛堢敤鏉ョ敓鎴怳RL锛夈傛洿澶氳鏌ョ湅CHtml::link銆 $links涓璳ey涓烘暣鍨嬪垯琛ㄧず鍙覆鏌撻摼鎺ユ枃瀛楋紙琛ㄧず褰撳墠椤碉級銆

涓嬮潰鐨勪緥瀛愬睍绀轰簡鎬庝箞鐢熸垚鍍忊淗ome > Sample post > Edit鈥濅竴鏍风殑閾炬帴锛屽叾涓淗ome鈥濇寚鍚戜富椤碉紝 鈥淪ample post鈥濇寚鍚戔渋ndex.php?r=post/view&id=12鈥濋〉闈紝鈥淓dit鈥濊〃绀哄綋鍓嶉〉銆傛敞鎰忊淗ome鈥 鏄氳繃homeLink鎸囧畾鐨勯摼鎺ャ

array(
    'Sample post'=>array('post/view', 'id'=>12),
    'Edit',
)

separator 灞炴
public string $separator;

breadcrumbs涓摼鎺ヤ箣闂寸殑鍒嗛殧绗︺傞粯璁ゆ槸鈥 » 鈥欍

tagName 灞炴
public string $tagName;

瀹瑰櫒鐨勬爣绛俱傞粯璁や负鈥榙iv鈥欍

鏂规硶璇︾粏

run() 鏂规硶
public void run()
婧愮爜锛 framework/zii/widgets/CBreadcrumbs.php#95 (鏄剧ず)
public function run()
{
    if(empty(
$this->links))
        return;

    echo 
CHtml::openTag($this->tagName,$this->htmlOptions)."\n";
    
$links=array();
    if(
$this->homeLink===null)
        
$links[]=CHtml::link(Yii::t('zii','Home'),Yii::app()->homeUrl);
    else if(
$this->homeLink!==false)
        
$links[]=$this->homeLink;
    foreach(
$this->links as $label=>$url)
    {
        if(
is_string($label) || is_array($url))
            
$links[]=CHtml::link($this->encodeLabel CHtml::encode($label) : $label$url);
        else
            
$links[]='<span>'.($this->encodeLabel CHtml::encode($url) : $url).'</span>';
    }
    echo 
implode($this->separator,$links);
    echo 
CHtml::closeTag($this->tagName);
}

娓叉煋閮ㄤ欢鐨勫唴瀹广

Copyright © 2008-2011 by Yii Software LLC
All Rights Reserved.