校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > laravel請求參數校驗方法

laravel請求參數校驗方法

熱門標簽:聊城電話外呼系統公司 銅川電話機器人價格 辦理重慶400電話 智能電話機器人好公司門薩維 德陽中江如何申請400開頭電話 江蘇電商外呼系統運營商 青白江地圖標注 沛縣400電話辦理 AI電話機器人OEM貼牌

對于后端開發而言,前端request請求中的參數校驗是一個必不可少的環節。無論傳來的參數是id還是email還是其他的參數,我們都要對參數的類型、大小、格式等等做這樣或者那樣的校驗,然后才進行邏輯處理,以確保邏輯處理時萬無一失,不會出現異樣。于是乎,在controller層中就會出現一大坨的校驗代碼,這些校驗代碼甚至有時候都超過了正常的邏輯代碼的數量,對于程序的擴展和維護很不利的。

但是,laravel為我們提供了一個很好的服務去解決參數校驗這個問題,它就是----Validate。

首先,我們需要建一個路由,暫時就叫"test"吧,然后test對應著TestController中的test方法。

Route::get('test', 'TestController@test');
class TestController extends Controller
{
 public function test(Request $request)
 {

 }
}

假設請求的參數中需要id、title這兩個參數,并且id必須是數字,且長度是1到10,并且是DB中的一行數據的主鍵、title必須是字符串,id和title都不能為空。一般的框架在寫的時候就會先取到id和title,然后對取到的id和title進行“是否是空”、“是否長度在1到10之間”、“通過id能否在數據庫中找到數據”等等繁瑣的校驗,利用laravel的“Validate”你只需要這樣就可以了。

public function test(Request $request)
{
 $validate = Validator::make($request->all(), [
  'id' => 'required|integer|between:1,10',
  'title' => 'required|string'
 ]);

如果沒有錯誤,就會繼續往下進行邏輯處理。假如說校驗不通過,例如id不在1和10之間,可以通過“validate”實例中的“errors()”方法,得到所有的錯誤,然后將錯誤放回給客戶端,如果想返回錯誤隊列中的頭一個錯誤,就寫$validate->errors()->first(),如果想返回所有錯誤列表,就寫“$validate->errors()->all()”。如下:

if($validate->fails())
{
 return $validate->errors()->first();
}

或者返回

if($validate->fails())
{
 return $validate->errors()->all();
}

假如請求參數中的id不是一個數字,而是字符串,結果就會出現:

你可能會想:返回結果能否使中文?答案當然是可以,你可以針對自己的程序,換成你任何想要的語言:

在項目中找到“resources”目錄下的“lang” 中的 “en”文件夾中的“validation.php”文件,

打開,然后找到這一行:

'integer'    => 'The :attribute must be an integer.',

這句話除了“:attribute”是不是其他字和返回結果一模一樣?或許你已經猜到了:這就是你調用的‘integer'方法的返回結果,“:attribute”是個變量,是你傳的“id”!現在,你可以寫成任何語言,我把它改為中文:

'integer'    => ':attribute 必須是數字!'

然后我們再看返回結果:

完美!只要你利用Validator的make方法,在請求參數數組中對應上‘integer'、“required”等字符串就可以利用laravel提供的服務,對請求參數進行“數字”、“判空”等校驗,laravel提供的眾多校驗方法,可以在laravel官網查詢。(ps:或者直接查詢validation.php這個文件!)

你或許還會想:我現在校驗了id是否為空,id是否是數字,我還想校驗id對應的數據能否在數據庫中查得到!這能實現嗎?

答案是:完全可以!在上篇文章中我介紹了laravel核心是一個IOC容器,你可以很方便的擴展任何服務注入到容器中!自定義validate服務也不例外!

我們首先創建一個provider

php artisan make:provider TestProvider

然后在boot方法里寫下:

public function boot()
{
 Validator::extend('user', function($attribute, $value, $parameters) {
  return !is_null(User::find($value));
 });
}

這行代碼很好理解吧:1、調用“Validator”的“extend”方法。2、傳給他倆個參數,一個是“user”,一個是返回值為boolen類型的callback 函數。3、函數中判斷User表中是否含有$value值數據,如果有,返回true,如果沒有,返回false。

然后在“config”的“app.php”中注冊上這個provider。(如果不清楚,可以去看前一篇文章“三分鐘學會laravel服務擴展”)

然后在validation.php中寫上:

'user'     => '此用戶不存在!',

然后在校驗方法中添上“user”

$validate = Validator::make($request->all(), [
 'id' => 'required|integer|between:1,10|user',
 'title' => 'required|string'
]);

數據庫中插入數據,開始檢驗:

OK,大功告成!是不是很簡單?laravel框架是不是很強大?

以上這篇laravel請求參數校驗方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Laravel 5.5中為響應請求提供的可響應接口詳解
  • 讓Laravel API永遠返回JSON格式響應的方法示例
  • Laravel+Dingo/Api 自定義響應的實現
  • laravel http 自定義公共驗證和響應的方法
  • Laravel5.1 框架Request請求操作常見用法實例分析
  • 跟我學Laravel之請求與輸入
  • 跟我學Laravel之請求(Request)的生命周期
  • 解決laravel 出現ajax請求419(unknown status)的問題
  • Laravel獲取當前請求的控制器和方法以及中間件的例子
  • Laravel框架處理用戶的請求操作詳解
  • Laravel5.1 框架響應基本用法實例分析

標簽:山南 南寧 鷹潭 三亞 烏魯木齊 迪慶 濟寧 赤峰

巨人網絡通訊聲明:本文標題《laravel請求參數校驗方法》,本文關鍵詞  laravel,請求,參數,校驗,方法,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《laravel請求參數校驗方法》相關的同類信息!
  • 本頁收集關于laravel請求參數校驗方法的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    亚洲一区精品在线| 日韩一区欧美一区| 在线成人av网站| 欧美在线观看18| 在线精品视频一区二区| 日本伦理一区二区| 欧美三级电影网| 欧美一区二区三区日韩视频| 欧美一区二区三区在线看| 777欧美精品| 精品成人一区二区| 久久久久国产精品麻豆| 国产精品久久久久影院色老大| 国产精品视频免费| 夜夜嗨av一区二区三区四季av| 亚洲mv在线观看| 九九精品视频在线看| 国产精品一区二区男女羞羞无遮挡| 国产综合久久久久久鬼色| 成人一道本在线| 欧美最猛性xxxxx直播| 911精品产国品一二三产区| 91精品国产入口在线| 久久免费看少妇高潮| 国产精品国产自产拍高清av| 亚洲制服丝袜在线| 黄色精品一二区| 国产成人亚洲精品狼色在线| www国产成人| 久久综合九色综合欧美亚洲| 国产精品久久久久天堂| 亚洲国产精品人人做人人爽| 国产一区二区女| 日本乱人伦一区| 久久精品一区二区三区av| 亚洲日本在线观看| 国内精品伊人久久久久av影院| 91美女片黄在线观看91美女| 精品乱码亚洲一区二区不卡| 亚洲人成网站精品片在线观看| 日韩国产欧美在线观看| 成人免费黄色在线| 日韩午夜中文字幕| 一区二区三区色| 成人在线视频首页| 欧美α欧美αv大片| 亚洲天堂网中文字| 国产成人精品一区二区三区网站观看 | 亚洲蜜臀av乱码久久精品蜜桃| 日本中文字幕不卡| 91国偷自产一区二区使用方法| 欧美电视剧在线看免费| 亚洲图片欧美视频| 色偷偷一区二区三区| 国产精品丝袜在线| 九九久久精品视频| 欧美一区二区三区四区在线观看| 亚洲视频在线一区二区| 成人亚洲一区二区一| 久久免费精品国产久精品久久久久| 日韩av午夜在线观看| 精品视频一区二区不卡| 亚洲色图制服丝袜| 成人精品gif动图一区| 久久综合狠狠综合久久综合88| 日本一不卡视频| 欧美福利一区二区| 日本最新不卡在线| 91精品国产一区二区三区| 亚洲成人在线观看视频| 欧洲一区二区av| 亚洲第一激情av| 欧美老年两性高潮| 天天色天天操综合| 日韩欧美国产一区二区在线播放| 天天色天天爱天天射综合| 欧美日本免费一区二区三区| 亚洲成人av电影| 欧美喷潮久久久xxxxx| 日韩和的一区二区| 欧美一区二区在线免费播放| 另类调教123区| 国产三级精品在线| 成人精品一区二区三区中文字幕| 国产精品麻豆视频| 99精品久久只有精品| 18涩涩午夜精品.www| 在线观看日韩av先锋影音电影院| 一区二区三区不卡在线观看| 欧美日韩精品免费| 久草热8精品视频在线观看| 久久久久久亚洲综合影院红桃 | 久久精品视频网| av在线播放不卡| 亚洲v中文字幕| 日韩女优视频免费观看| 成人va在线观看| 亚洲一区二区在线观看视频| 日韩免费电影网站| 成人av午夜影院| 亚洲成av人片| 国产欧美一区二区在线| 欧美网站一区二区| 国内精品视频666| 中文字幕综合网| 日韩久久精品一区| 99re这里只有精品视频首页| 视频一区二区中文字幕| 国产丝袜欧美中文另类| 欧美色精品在线视频| 国产精品99精品久久免费| 一区二区三区在线视频免费 | 麻豆精品视频在线| 国产精品你懂的| 日韩一区二区不卡| 色欧美片视频在线观看| 蜜臀久久久久久久| 中文字幕在线不卡一区二区三区| 欧美精选在线播放| 成人app在线观看| 麻豆精品国产91久久久久久| 国产精品日日摸夜夜摸av| 欧美一级久久久久久久大片| 91免费在线看| 国产高清不卡一区| 日韩精品成人一区二区在线| 亚洲三级久久久| 国产女人18毛片水真多成人如厕| 欧美丰满高潮xxxx喷水动漫| 91视视频在线观看入口直接观看www| 玖玖九九国产精品| 视频一区二区中文字幕| 亚洲免费成人av| 亚洲欧洲av另类| 国产欧美日韩另类一区| 久久亚洲影视婷婷| 欧美成人在线直播| 欧美色图激情小说| 欧美视频完全免费看| 91免费看视频| 99精品国产视频| 成人综合婷婷国产精品久久蜜臀 | 国产亚洲欧美日韩俺去了| 日韩欧美自拍偷拍| 91精品国产91久久久久久最新毛片 | 日欧美一区二区| 性做久久久久久久免费看| 一区二区三区资源| 亚洲欧美另类小说| 中文字幕亚洲在| 亚洲色大成网站www久久九九| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 国产黄人亚洲片| 国产一区二区导航在线播放| 狠狠色丁香婷综合久久| 黄色资源网久久资源365| 美女网站色91| 久久er99热精品一区二区| 日韩国产一二三区| 老司机一区二区| 国产成人在线影院| 91猫先生在线| 欧美日韩一级黄| 精品久久久三级丝袜| 2020国产精品自拍| 日本一区免费视频| 亚洲人成影院在线观看| 亚洲午夜久久久久中文字幕久| 五月激情丁香一区二区三区| 乱中年女人伦av一区二区| 韩国女主播成人在线| 不卡视频一二三四| 欧美亚洲动漫精品| 日韩免费在线观看| 亚洲国产成人在线| 亚洲成a人v欧美综合天堂下载 | 午夜电影一区二区| 久久精品国产精品亚洲精品 | 亚洲超碰97人人做人人爱| 欧美aa在线视频| 国产白丝精品91爽爽久久| 97aⅴ精品视频一二三区| 欧美日高清视频| 精品国产人成亚洲区| 最好看的中文字幕久久| 同产精品九九九| 成人三级伦理片| 欧美日韩免费观看一区三区| 久久久久久久久久美女| 亚洲精品国产无套在线观| 精品在线视频一区| 欧美伊人久久久久久久久影院| 日韩精品一区二区三区三区免费| 亚洲欧美怡红院| 韩国中文字幕2020精品| 色乱码一区二区三区88| 欧美精品一区二区三区高清aⅴ| 亚洲图片激情小说| 国产伦精品一区二区三区在线观看| 91老司机福利 在线|