ZF Validator 閱讀筆記

2021-06-16 01:26:45 字數 1218 閱讀 4317

1 繼承關係:

各種驗證器都繼承於zend_validate_abstract, zend_validate_abstract繼承了zend_validate_inte***ce介面.

zend_validate_inte***ce介面只提供了乙個驗證器的基礎規範, zend_validate_abstract實現了驗證器的主要功能. 所以實際的驗證器,也就是所謂的有效性檢查元件只要繼承這個類就可以了. 子類的擴充套件相對比較容易 .

2 zend_validate_abstract 中訊息與錯誤:

閱讀validate**發現, 記錄錯誤,只需要呼叫父類的_error(); 方法就可以了,並且唯一的引數就是乙個錯誤模板[ $_messagetemplates ] , 該變數在子類中實際的驗證器中定義,也就是zend_validate_abstract的子類 . 父類會呼叫子類的訊息模板,並處理錯誤訊息.

閱讀父類的_error(); 方法可以發現, 乙個錯誤訊息記錄兩個結果,乙個是錯誤訊息,乙個是錯誤型別.

/*** @param  string $messagekey optional

* @param  string $value      optional

* @return void

*/protected

function _error($messagekey = null, $value = null)

if ($value === null) 

$this->_errors              = $messagekey;

$this->_messages[$messagekey] = $this->_createmessage($messagekey, $value);

}_errors 陣列中記錄在子類中定義的錯誤型別,  _messages 中記錄的是實際的粗五訊息. 並且這裡 $this->_createmessage($messagekey, $value);實現了錯誤訊息和訊息中預定義變數的替換, 這些都是在子類中定義的,父類直接呼叫,閱讀這些**可以知道, zf 的驗證器,只能例項化實用,不能靜態呼叫 .

在抽象類zend_validate_abstract中, setmessages(array $messages)方法或 setmessage($messages,$key), 並不能替換訊息模板中的預定義變數, 只能是在類的預定義屬性 _messages中新增一項值, 變數的替換工作由 _createmessage() 方法來完成.

閱讀任務 閱讀筆記 4

功能驅動的設計 1 構造總體模型 2 構造功能列表 3 制定開發計畫 4 功能設計階段 5 實現具體功能 軟體測試按目的分類 1 功能測試 2 非功能測試 軟體測試的各種方法 1 單元測試和 覆蓋率測試 2 構建驗證測試 3 驗收測試 4 探索式的測試 5 回歸測試 6 場景 整合 系統測試 7 夥...

閱讀筆記 2006 01

請您尊重您的價值,因為它已經得到了社會的認可。當你貶低或破壞您的價值時,就等於貶低或破壞整個行業在這個社會的價值。無論在什麼時候,自己都應該尊重自己的價值,而不能因為一時的困境而貶低和破壞了自己的價值,因為你的破壞之舉,將傷害到整個行業的價值乃至社會的規則。因為,唯有懂得尊重自己的價值的人,才能真正...

25 211(840) 閱讀筆記

傳輸通道rach特點 存在衝突風險 使用開環功控。物理通道通過載頻 擾碼 通道化碼 起始時間定義,對於上行通道,還包括相對相位 0或p 2 上行dpch為i q碼復用。fbi bits提供從ue到網路的反饋資訊,以用於閉環傳送分集。上行dpch可以使用多碼,這種情況下,多個並行的dpdch使用不同的...