<table cellspacing="0" cellpadding="0"><tr><td class="t_f" id="postmessage_51994"> 宿題の練習 <div class="blockcode"> <div id="code_u2v"><ol> <li><?php<li>require_once("Zend/Loader.php");<li>//バリデータークラスとバリデーターの関数クラス(Int)、およびカスタムインターフェースクラスを導入します;<li>Zend_Loader::loadClass( 'Zend_Validate');<li>Zend_Loader::loadClass('Zend_Validate_Int');<li>Zend_Loader::loadClass('Zend_Validate_Interface');<li>//カスタムバリデータ関数クラス (GongBeiNum) を追加 [公倍数]<li>クラス GongBeiNum は Zend_Validate_Interface を実装します<li> {<li> //インターフェースでエラーメッセージ報告属性を宣言<li> protected $_messages = array();<li> //インターフェースで検証メソッドを宣言<li> public function isValid($num)<li> {<li> if (!($num%3 = =0) && !($num%5==0)) <li> {<li> //検証が失敗した場合、エラー メッセージはエラー メッセージ レポート属性に値を返します<li> $this ->messages[] = "あなたのメッセージ入力された値は 3 と 5 の公倍数ではありません! ";<li> // プログラムを終了します <li> return false; <li> }<li> // true を返す <li> return true; <li> }<li> // インターフェースのエラー報告メソッドを定義します <li> public function getMessages()<li> { <li> return $this ->messages;<li> }<li> //エラーメッセージの抽出を定義します (オプション) <li> public function getErrors()<li> {<li><li> }<li>}<li>//クラス外公倍数検出メソッドの定義 <li>function check_num($num )<li>{<li> //バリデータークラスをインスタンス化します<li> $Validate = new Zend_Validate();<li> //バリデーター関数クラスを追加し、カスタムバリデーター関数クラスを追加してバリデーターを形成しますchain<li> $Validate - > addValidator(new Zend_Validate_Int())</li> <li> -> addValidator(new GongBeiNum());</li> <li> //パラメータを検証します</li> <li> if (!$Validate -> isValid($num)) </li> <li> {</li> <li> / /Loop if error エラー メッセージと出力 </li> <li> foreach ($Validate -> getMessages() as $value) </li> <li> {</li> <li> echo $value . "<br>";</li> <li> return false;</li> <li> }</li> <li> }</li> <li>}</li> <li> <li>/ /判定を指定 Value</li> <li>$num1 = '15';</li> <li>//チェックメソッドを実行</li> <li>check_num($num1);</li> <li>?></li> </ol></div> <em onclick="copycode($('code_u2v'));">コードをコピー</em> </div> </td></tr></table> <div id="comment_51994" class="cm"> </div> <div id="post_rate_div_51994"></div> <br><br>