首页 > 其他分享 >laravel: 常用的验证规则

laravel: 常用的验证规则

时间:2024-08-07 19:27:17浏览次数:5  
标签:laravel city 9fa5 4e00 验证 age required 规则 message

一,只包含中文:

'city'   => 'required|regex:/^[\x{4e00}-\x{9fa5}]+$/u',

正则表达式 [\x{4e00}-\x{9fa5}] 匹配所有中文字符,其中 \x{4e00} 是中文字符的开始码,\x{9fa5} 是结束码。

u 修饰符用于正则表达式,以支持 UTF-8 编码

二,包含中英文数字

    public function rules()
    {
        return [
            'your_field' => ['required', 'regex:/^[A-Za-z0-9\x{4e00}-\x{9fa5}]+$/u']
        ];
    }

三,指字字符串长度范围

使用min/max规则
例子:最短2个字,最长11个字

        $message = [
            'city'  => '请选择要搜索的城市',
            'city.min'  => '长度最小2个字',
            'city.max'  => '长度最大11个字',
        ];

        $params = $this->validate($request, [
            //所属城市
            'city'   => 'required|string|min:2|max:11|regex:/^[\x{4e00}-\x{9fa5}]+$/u',
        ],$message);

 说明:laravel校验时,对字符串长度是按照utf-8计算的,对于中文来说很方便

四,指定字符串固定长度

使用size规则

        //得到城市
        $message = [
            'city'  => '请选择要搜索的城市',
            'city.size'  => '长度固定11个字',
        ];

        $params = $this->validate($request, [
            //所属城市
            'city'   => 'required|string|size:11|regex:/^[\x{4e00}-\x{9fa5}]+$/u',
        ],$message);

 五,指定数字的大小范围

        // 参数检查
        $message = [
            'age'  => '用户年龄错误',
        ];

        $params = $this->validate($request, [
            'age'   => 'required|integer|between:1,120',
        ],$message);

六,分别指定数字的最大值和最小值

最小值用min

        $message = [
            'age'  => '用户年龄错误',
        ];

        $params = $this->validate($request, [
            'age'   => 'required|numeric|min:18',
        ],$message);

最大值用max

        // 参数检查
        $message = [
            'age'  => '用户年龄错误',
            'age.max'  => '高于最大值',
        ];

        $params = $this->validate($request, [
            'age'   => 'required|numeric|max:120',
        ],$message);

七,变量的值是固定的几个,可以列举:

用in列举出可以选的值

            //租还是买类型: 7.租共享单车8.买自行车
            'type'   => 'required|in:7,8',

八,变量是数组

            //商店类型 1.大型超市 2.夫妻店 3.社区底商 4.临街门面 5.档口摊位 6.百货中心 7.其他
            'shop_type'=>'nullable|array',
            'shop_type.*'=>'required|in:1,2,3,4,5,6,7',

 

标签:laravel,city,9fa5,4e00,验证,age,required,规则,message
From: https://www.cnblogs.com/architectforest/p/18338614

相关文章

  • laravel: 用中间件把请求和响应log下来
    一,代码:1,中间件<?phpnamespaceApp\Http\Middleware;useClosure;useIlluminate\Http\Request;useSymfony\Component\HttpFoundation\Response;useApp\extend\LogEs;classLogSearch{/***Handleanincomingrequest.**@par......
  • 验证数据但有效值取决于其他列
    我有一个像这样构建的Pandas数据框:水果颜色吃过的吗?吃过的日期苹果红色是2024年3月14日苹......
  • 微信小程序-手机验证码短信登录接口(防薅方法)
    前言开发的小程序手机号短信验证码登录这一个功能,入参只有手机号。结局盗刷、恶意刷。解决方案1.nginx只允许referer是小程序来源的请求#你的接口location^~/api/{if($http_referer!~*"^https://servicewechat.com/【你的小程序appid】/\d+/page-fram......
  • 经过形式化验证的自动驾驶故障运行安全概念
    经过形式化验证的自动驾驶故障运行安全概念**摘要:**现代自动驾驶(AD)系统依靠安全措施来处理故障并使车辆处于安全状态。为了消除致命的道路交通事故,汽车制造商不断推出新的感知和控制系统。当代汽车设计和安全工程最佳实践适用于单独分析系统组件,而当今高度复杂且相互依赖......
  • vue|el-table表格添加一行删除一行并且验证必填
    我们在工作中,难免会遇到一些特殊的场景。比如动态表格的实现,主要的实现就是可以增加删除列,并且需要对数据进行验证。如何在vue中使用el-table添加一行删除一行并且验证必填呢?请看VCR下面是代码示例:<template><divstyle="display:flex;justify-content:center;ali......
  • 【验证码逆向专栏】某安登录流程详解与验证码逆向分析与识别
    声明本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作......
  • Element el-form 表单校验,保存或提交验证某一项或者多项;validateField 的使用
    通常新增或者编辑对form表单的校验都是全局性的校验:this.$refs.form.validate(valid=>{if(valid){//校验通过,业务逻辑代码...}});如果需要对表单里的特定几个必填项进行校验,应该如何实现? 业务场景:下图点击保存按钮时,只需要校验前两项,其余参数不......
  • pbootcms网站后台关闭验证码后, 无法登录问题解决方法
    最近闲来无事,在后台将pbootcms的登录验证码关闭了(全局配置-配置参数-安全配置-后台验证码)结果问题来了,第二天登录后台一直提示验证码不能为空。 这不是自己给自己找事吗!现在想输入验证码,也没有地方输入。 从程序上解决吧 apps\admin\controller\IndexController.ph......
  • laravel:得到linux平台当前脚本的执行用户
    一,代码:<?phpnamespaceApp\Console\Commands;useIlluminate\Console\Command;classIndexAllCommandextendsCommand{/***Thenameandsignatureoftheconsolecommand.**@varstring*/protected$signature='......
  • laravel:从linux命令行运行command
    一,创建command1,执行命令liuhongdi@lhdpc:/data/api$phpartisanmake:commandIndexAllCommand2,查看创建的文件:<?phpnamespaceApp\Console\Commands;useIlluminate\Console\Command;classIndexAllCommandextendsCommand{/***Thenameandsignatu......