封裝了一個驗證類
阿新 • • 發佈:2019-05-13
into ons namespace reac ips pac urn end _id
<?php /** * 表單驗證工具類 * User: Eden * Date: 19-4-26 上午9:23 */ namespace Common\Util; use Vendor\Func\Json; use Vendor\Func\Verify; class ValidUtil extends CommonUtil { /** * @param $regulations * @param $params * @return bool */ public static function each($regulations,$params) { //$regulations = [ // 'name' => [ // 'required' => '請先寫姓名|10001', // ], // 'telephone' => [ // 'required' => '請先寫手機號|10001', // 'telephone' => '請先寫正確的手機號|10002', // ], // 'id_number' => [ // 'required' => '請填寫身份證號|10001', // 'id_card' => '請填寫正確的身份證號|10001', // ], // 'department_id' => [ // 'required' => '請選擇科室|10001', // ], // 'uid' => [ // 'required' => '缺少用戶id|10001', // ], //]; $json = new Json(); foreach ($regulations as $param => $regulation) { foreach ($regulation as $rule => $tips) { if (((string)$rule === 'required') && !$params[$param]) { $tips = explode('|',$tips); $json->printOutError($tips[0],$tips[1] ?:'10001'); break; } if (((string)$rule === 'telephone') && !Verify::checkMobile($params[$param])) { $tips = explode('|',$tips); $json->printOutError($tips[0],$tips[1] ?:'10001'); break; } if (((string)$rule === 'id_card') && !Verify::checkIDCard($params[$param])) { $tips = explode('|',$tips); $json->printOutError($tips[0],$tips[1] ?:'10001'); break; } } } return true; } }
使用如下,
$regulations = [ 'name' => [ 'required' => '請填寫姓名|10001', ], 'telephone' => [ 'required' => '請填寫手機號|10001', 'telephone' => '請填寫正確的手機號|10002', ], 'id_number' => [ 'required' => '請填寫身份證號|10001', 'id_card' => '請填寫正確的身份證號|10001', ], 'department_id' => [ 'required' => '請選擇科室|10001', ], 'uid' => [ 'required' => '缺少用戶id|10001', ], ]; $params = $_POST; ValidUtil::each($regulations,$params);
通用的驗證,就交給它。
根數據庫交互的驗證,在下面的步驟中,繼續進行。
封裝了一個驗證類