最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Laravel中表單size驗(yàn)證數(shù)字示例詳解

 更新時(shí)間:2018年07月10日 15:37:02   作者:施國(guó)鵬  
Laravel 的驗(yàn)證功能非常強(qiáng)大,基本上常見(jiàn)的需求都有對(duì)應(yīng)的驗(yàn)證規(guī)則,下面這篇文章主要給大家介紹了關(guān)于Laravel中表單size驗(yàn)證數(shù)字的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

要驗(yàn)證一個(gè)數(shù)字的確定值,看了表單驗(yàn)證文檔

size:value驗(yàn)證的字段必須具有與給定值匹配的大小。對(duì)于字符串來(lái)說(shuō),value 對(duì)應(yīng)于字符數(shù)。對(duì)于數(shù)字來(lái)說(shuō),value 對(duì)應(yīng)于給定的整數(shù)值。對(duì)于數(shù)組來(lái)說(shuō), size 對(duì)應(yīng)的是數(shù)組的 count 值。對(duì)文件來(lái)說(shuō),size 對(duì)應(yīng)的是文件大小(單位 kb )。

寫(xiě)的驗(yàn)證規(guī)則是這樣的

$data = ['age' => 9];
 
$validator = \Illuminate\Support\Facades\Validator::make($data, ['age' => 'required|size:9']);
 if ($validator->fails()) {
 dd($validator->errors()->first());
}
dd('pass');

我以為只要在驗(yàn)證的數(shù)據(jù) 9 是整數(shù),他就會(huì)直接按數(shù)字的方式驗(yàn)證,結(jié)果直接打印了錯(cuò)誤消息The age must be 9 characters.這個(gè)錯(cuò)誤消息很明顯的是提示字符串長(zhǎng)度的,然后看了一下才發(fā)現(xiàn)還需要加上一個(gè)條件。numeric或者integer,

看源碼直接跳到\Illuminate\Validation\Validator::fails()查看驗(yàn)證


主要驗(yàn)證的方法是這個(gè)$this->validateAttribute($attribute, $rule);


前面這些是過(guò)濾,驗(yàn)證文件上傳的


這里動(dòng)態(tài)拼接了一個(gè)方法,通過(guò)打印得知是validateSize


然后在這個(gè)類用的 trait 中找到這個(gè)方法ValidatesAttributes::validateSize


其實(shí)這里已經(jīng)可以看到驗(yàn)證$hasNumeric


$hasNumeric里放的是這個(gè)


再看一下他是如何驗(yàn)證的



如果沒(méi)有'numeric'或者'integer'會(huì)返回 null,就會(huì)導(dǎo)致$hasNumeric等于 false

所以就不會(huì)把這個(gè)當(dāng)做數(shù)字驗(yàn)證了

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論

贡嘎县| 交口县| 龙岩市| 井研县| 肥城市| 河曲县| 郴州市| 民和| 济源市| 正定县| 邵阳县| 安平县| 依兰县| 黔西县| 息烽县| 新巴尔虎右旗| 开鲁县| 大兴区| 秦皇岛市| 宁阳县| 黄梅县| 中江县| 陆川县| 安阳县| 临汾市| 长白| 乐都县| 渭南市| 衡水市| 平远县| 侯马市| 远安县| 伊宁市| 临夏市| 河北省| 荣成市| 黔西县| 华阴市| 客服| 梅河口市| 鸡西市|