Thinkphpのvalidate属性検証におけるcallbackとfunctionの違い

2281 ワード

この文章を読む前に、まずこの公式文書を見て公式文書を自動的に検証することをお勧めします.
簡単に言えば、callbackとfunctionはいずれも1つの関数をカスタマイズして検証するのですが、違いは、callbackの関数コードを直接モデルクラスに入れればいいことですが、functionの場合、関数コードはモデルクラスに入れず、wwwApplicationHomeCommonに入れることです.function.phpの中.この点だけ区別する.
私のインスタンスコードを貼りましょう.私のインスタンスは、フォームに記入されたデータがシステム時間より早いかどうかを検証するために関数をカスタマイズします.

namespace Home\Model;
use Think\Model;

/**
* 
*/
class ExamsModel extends Model
 {
    protected $_validate = array(
        array('start_time','time1','            !',1,'callback')

    );

    public function time1(){
         $starttime=$_POST["start_time"];//$_post       
         $curtime=date("y-m-d");

         if($starttime>$curtime){

             return true;
         }
         else 
         {
             return false;
         }    

    }
 }