laravel5之自定義驗證規則15位18位身份證驗證
阿新 • • 發佈:2019-01-30
1,app\Providers\AppServiceProvider.php
在檔案中的boot方法中新增
namespace App\Providers; use Validator; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider { /** * Bootstrap any application services. * * @return void */ public function boot() { //擴充套件身份證驗證規則Validator::extend('identitycards', function($attribute, $value, $parameters) { return preg_match('/(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$)/', $value); }); Validator::extend('telphone', function($attribute, $value, $parameters) { return preg_match('/^1[34578][0-9]{9}$/', $value); }); }
2,
自定義驗證錯誤資訊,找到resources\lang\zh-CN\validation.php檔案
在return中新增
'identitycards' => '身份證號錯誤!',
這樣就註冊好了。
現在開始始用,在你需要的地方使用,和laravel提供的驗證一樣如下
'icards' => 'required|identitycards
注:
identitycards這個命名就是新的驗證規則可自定義()但三個地方都得
一致。