参考にさせて頂いたページ
バリデーションを使おう!(5/5):初心者のためのCakePHP2.0 プログラミング入門
ホストマシン環境
ゲストマシン環境
- PHP 5.3.3
- CentOS release 6.6 (Final)
- cakephp2.5.6
- mysql Ver 14.14 Distrib 5.6.21, for Linux (x86_64) using EditLine wrapper
- Apache/2.2.15 (Unix)
app/Model/MySampleData.phpにオリジナルバリデーションを定義する
参考ページにならって以下のように記述した。
<?php
App::uses('AppModel', 'Model');
class MySampleData extends AppModel {
public $validate = array(
'name'=>'notEmpty',
'mail'=>array(
// 'rule'=>array('checkMyRule',checkMyRuleの第二引数$numに入る値),
'rule'=>array('checkMyRule',2),
'message'=>'偶数を入力ください。'
),
'tel'=>'alphaNumeric'
);
//実行する際には、第一引数にはフォームに入力したvalue属性の値が配列で入る
function checkMyRule($val,$num){
$n = $val['mail'];
//入力値を$numで割った余りが0のとき、戻り値がtrueなので、バリデーションを通る
return $n % $num == 0;
}
}
このソースコードについて
このソースコードについての詳細説明は、コメントとして記載した。