您好,登錄后才能下訂單哦!
下載一個tp5的框架文件解壓到xampp\htdocs下改名zerg(服務端)然后用PhpStorm新建一個項目打開zerg目錄在application目錄下新建一個api文件夾模塊然后新建一個controller文件夾,controller下新建v1文件夾,然后新建一個Banner.php(Controller層),里面新建一個方法getBanner(Action動作):
class Banner
{
public function getBanner(){
}
}
1.直白方式驗證:
(1)TP5傳參數法
public function getBanner($id){
$data = [
'id' => $id,
];
$validate = new Validate([
'id' => 'require|max:2' //表示id參數為必須長度不能超過2個字符
]);
$result = $validate->check($data);
if(!$result){
echo $validate->getError();
}else{
echo "成功";
}
}
測試結果如下:
(2)利用Request獲取所有參數的方法:
結果一樣:
$validate = new Validate([
'id' => 'require|max:2'
]);
$request = Request::instance();
$result = $validate->check($request->param());
if(!$result){
echo $validate->getError();
}else{
echo "成功";
}
2.面向對象的方式驗證:
方式1(雛形版)
在api下新建一個validate,新建php文件IDMustBePositiveInt.php 繼承于Validate,添加以下代碼
protected $rule = [
'id' => 'require|isPositiveInteger', //添加自定義驗證方法isPositiveInteger
];
protected function isPositiveInteger($value, $rule = '', $data = '', $field = ''){
if(is_numeric($value) && is_int($value+0) && ($value + 0) > 0){
return true;
}else{
return $field . '必須是正整數';
}
}
結果如下:
方式2(最終版)
在validate下新建一個BaseValidate.php文件(控制器)同Validate繼承,添加一個自定義方法goCheck();
然后讓isMusBePositiveInt同Validate繼承
然后在Banner中只需一句話就可以了
測試結果
面向對象編程不但代碼少而且可復用性強,需要好好掌握。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。