この記事では主に Zend Framework バリデーター Zend_Validate の使用法を紹介し、バリデーター Zend_Validate の機能、使用スキル、および関連する注意事項をサンプルの形で分析します。必要な方はこの記事の例を参照してください。 ## Zend Framework バリデータ Zend_Validate の使用法について説明します。参照用に全員と共有してください。詳細は次のとおりです。
はじめに:は入力コンテンツをチェックし、コンテンツが既に更新されているかどうかを示すブール結果を生成します。メカニズムの検証に成功しました。
isValid() メソッドが False を返した場合、サブクラスの getMessage() メソッドは検証失敗の理由を説明するメッセージ配列を返します。
メッセージとエラーの内容を正しく返すには、isValid() メソッドの呼び出しごとに、前の isValid() メソッド呼び出しによって発生したメッセージとエラーをクリアする必要があります。
ケース:
<?php require_once 'Zend/Validate/EmailAddress.php'; function c_email($email) { $validator = new Zend_Validate_EmailAddress(); if($validator->isValid($email)){ echo "输入的E-mail地址:"; echo $email."有效!<p>"; }else{ echo "输入的E-mail地址:"; echo $email."无效!"; echo "失败消息为:<p>"; foreach($validator->getMessages() as $message){ echo $message."<p>"; } foreach($validator->getErrors() as $error){ echo $error."<p>"; } } } $e_m1 = "abc@123.com"; $e_m2 = "abc#123.com"; c_email($e_m1); c_email($e_m2);
結果:
入力された電子メール アドレス: abc@123.com !入力された電子メール アドレス: abc#123.com は無効です。失敗メッセージは次のとおりです: 'abc#123.com' は基本形式 local-part@hostname
emailAddressInvalidFormat
#クラスを導入した後、検証関数を定義し、関数内でクラスをインスタンス化します。 isValid() メソッドを使用して検証を実行します。サブクラスのバリデーターによって、異なる内容が検証されます。 同時に、getMessages() メソッドと getErrors() メソッドを使用します。
ソースコード鑑賞:
public function isValid($value) { if (!is_string($value)) { $this->_error(self::INVALID); return false; } $matches = array(); $length = true; $this->_setValue($value); // Split email address up and disallow '..' if ((strpos($value, '..') !== false) or (!preg_match('/^(.+)@([^@]+)$/', $value, $matches))) { $this->_error(self::INVALID_FORMAT); return false; } $this->_localPart = $matches[1]; $this->_hostname = $matches[2]; if ((strlen($this->_localPart) > 64) || (strlen($this->_hostname) > 255)) { $length = false; $this->_error(self::LENGTH_EXCEEDED); } // Match hostname part if ($this->_options['domain']) { $hostname = $this->_validateHostnamePart(); } $local = $this->_validateLocalPart(); // If both parts valid, return true if ($local && $length) { if (($this->_options['domain'] && $hostname) || !$this->_options['domain']) { return true; } } return false; }
分析:
これが主な検証関数の内容です文字列であるか、メールボックスのルールに準拠しているか、長さが一致しているかなど複数の状況に分けて検証され、最終的にはすべて一致した場合に true が返されます。
上記がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。 関連する推奨事項:Zend Framework での Zend_View コンポーネントの使用状況分析
以上がZend Framework バリデータ Zend_Validate の使用状況分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。