Yii Framework v1.1.10 绫诲弬鑰

CFilter

system.web.filters
缁ф壙 class CFilter » CComponent
瀹炵幇 IFilter
瀛愮被 CAccessControlFilter, CInlineFilter
婧愯嚜 1.0
鐗堟湰 $Id: CFilter.php 2799 2011-01-01 19:31:13Z qiang.xue $
婧愮爜 framework/web/filters/CFilter.php
CFilter鏄墍鏈夎繃婊ゅ櫒鐨勫熀绫汇

杩囨护鍣ㄥ彲鐢ㄤ簬鍔ㄤ綔鎵ц涔嬪墠鍜屼箣鍚庛 瀹冨彲浠ヤ慨鏀瑰姩浣滅殑涓婁笅鏂囨墽琛岋紝 鎴栬呬慨鏀瑰姩浣滄墍浜х敓鐨勭粨鏋溿

閲嶅啓preFilter()鎸囧畾鍦ㄥ姩浣滀箣鍓嶆墽琛 鐨勮繃婊ら昏緫锛岄噸鍐postFilter()鍦ㄥ姩浣滀箣鍚庣殑鎵ц杩囨护閫昏緫銆

鍏叡鏂规硶

闅愯棌缁ф壙鏂规硶

鏂规硶鎻忚堪瀹氫箟鍦
__call() 濡傛灉绫讳腑娌℃湁璋冪殑鏂规硶鍚嶏紝鍒欒皟鐢ㄨ繖涓柟娉曘 CComponent
__get() 杩斿洖涓涓睘鎬у笺佷竴涓簨浠跺鐞嗙▼搴忓垪琛ㄦ垨涓涓涓哄悕绉般 CComponent
__isset() 妫鏌ヤ竴涓睘鎬ф槸鍚︿负null銆 CComponent
__set() 璁剧疆涓涓粍浠剁殑灞炴у笺 CComponent
__unset() 璁剧疆涓涓粍浠剁殑灞炴т负null銆 CComponent
asa() 杩斿洖杩欎釜鍚嶅瓧鐨勮涓哄璞° CComponent
attachBehavior() 闄勫姞涓涓涓哄埌缁勪欢銆 CComponent
attachBehaviors() 闄勫姞涓涓涓哄垪琛ㄥ埌缁勪欢銆 CComponent
attachEventHandler() 涓轰簨浠堕檮鍔犱竴涓簨浠跺鐞嗙▼搴忋 CComponent
canGetProperty() 纭畾灞炴ф槸鍚﹀彲璇汇 CComponent
canSetProperty() 纭畾灞炴ф槸鍚﹀彲鍐欍 CComponent
detachBehavior() 浠庣粍浠朵腑鍒嗙涓涓涓恒 CComponent
detachBehaviors() 浠庣粍浠朵腑鍒嗙鎵鏈夎涓恒 CComponent
detachEventHandler() 鍒嗙涓涓瓨鍦ㄧ殑浜嬩欢澶勭悊绋嬪簭銆 CComponent
disableBehavior() 绂佺敤涓涓檮鍔犺涓恒 CComponent
disableBehaviors() 绂佺敤缁勪欢闄勫姞鐨勬墍鏈夎涓恒 CComponent
enableBehavior() 鍚敤涓涓檮鍔犺涓恒 CComponent
enableBehaviors() 鍚敤缁勪欢闄勫姞鐨勬墍鏈夎涓恒 CComponent
evaluateExpression() 璁$畻涓涓狿HP琛ㄨ揪寮忥紝鎴栨牴鎹粍浠朵笂涓嬫枃鎵ц鍥炶皟銆 CComponent
filter() 鎵ц杩囨护銆 CFilter
getEventHandlers() 杩斿洖涓涓簨浠剁殑闄勫姞澶勭悊绋嬪簭鍒楄〃銆 CComponent
hasEvent() 纭畾涓涓簨浠舵槸鍚﹀畾涔夈 CComponent
hasEventHandler() 妫鏌ヤ簨浠舵槸鍚︽湁闄勫姞鐨勫鐞嗙▼搴忋 CComponent
hasProperty() 纭畾灞炴ф槸鍚﹁瀹氫箟銆 CComponent
init() 鍒濆鍖栬繃婊ゅ櫒銆 CFilter
raiseEvent() 鍙戣捣涓涓簨浠躲 CComponent

鍙椾繚鎶ゆ柟娉

闅愯棌缁ф壙鏂规硶

鏂规硶鎻忚堪瀹氫箟鍦
postFilter() 鎵цpost鎿嶄綔杩囨护鍣ㄣ CFilter
preFilter() 鎵ц棰勬搷浣滆繃婊ゅ櫒銆 CFilter

鏂规硶璇︾粏

filter() 鏂规硶
public void filter(CFilterChain $filterChain)
$filterChain CFilterChain 璁剧疆濂界殑杩囨护鍣ㄩ摼銆
婧愮爜锛 framework/web/filters/CFilter.php#37 (鏄剧ず)
public function filter($filterChain)
{
    if(
$this->preFilter($filterChain))
    {
        
$filterChain->run();
        
$this->postFilter($filterChain);
    }
}

鎵ц杩囨护銆 榛樿瀹炵幇鐨勬槸璋冪敤preFilterpostFilter锛屽瓙绫 搴旇瑕嗙洊杩欎釜鏂规硶銆傚鏋滃瓙绫婚渶瑕佽鐩栬繖涓柟娉曪紝 瑕佺‘瀹氬姩浣滄墽琛屾椂璋冪敤 $filterChain->run()

init() 鏂规硶 锛堝彲鐢ㄨ嚜 v1.1.4锛
public void init()
婧愮爜锛 framework/web/filters/CFilter.php#53 (鏄剧ず)
public function init()
{
}

鍒濆鍖栬繃婊ゅ櫒銆 杩欎釜鏂规硶浼氬湪杩囨护鍣ㄥ睘鎬у凡缁忓垵濮嬪寲锛 preFilter璋冪敤涔嬪墠璋冪敤銆 浣犲彲浠ヨ鐩栬繖涓柟娉曚互鍖呭惈涓浜涘垵濮嬪寲鐨勯昏緫銆

postFilter() 鏂规硶
protected void postFilter(CFilterChain $filterChain)
$filterChain CFilterChain 璁剧疆濂界殑杩囨护鍣ㄩ摼銆
婧愮爜锛 framework/web/filters/CFilter.php#72 (鏄剧ず)
protected function postFilter($filterChain)
{
}

鎵цpost鎿嶄綔杩囨护鍣ㄣ

preFilter() 鏂规硶
protected boolean preFilter(CFilterChain $filterChain)
$filterChain CFilterChain 璁剧疆濂界殑杩囨护鍣ㄩ摼銆
{return} boolean 杩囨护杩囩▼鏄惁瑕佺户鎵匡紝 骞朵笖鍔ㄤ綔灏嗚鎵ц銆
婧愮爜锛 framework/web/filters/CFilter.php#63 (鏄剧ず)
protected function preFilter($filterChain)
{
    return 
true;
}

鎵ц棰勬搷浣滆繃婊ゅ櫒銆

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