Laravel Validator 实现两个或多个字段联合索引唯一

 更新时间:2019年05月08日 10:54:14   作者:Laravel  
这篇文章主要介绍了Laravel Validator 两个或多个字段联合索引唯一,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下

Laravel的Validation还是蛮好用的,使用Validator可以非常方便的验证表单,它提供了unique唯一性验证,但是默认只能验证一个字段,那遇到两个甚至多个字段的联合索引,需要满足复杂条件唯一性怎么实现呢

Validator复杂唯一性实现方法

我们可以用自定义 Rule 自定义验证规则,比如像这样:

[...]
$where = [
      'name' => $request->name,
      'phone' => $request->phone
    ];
$this->validate($request, [
    "phone" => [
        "required",
        Rule::unique('table_name')
            ->where(function ($query) use ($where) {
                return $query->where($where);
            })
    ],
]);
[...]

首先我们把原来的字符串形式,改成数组形式,在数组中用 Rule 去自定义新的规则,很显然 unique() 方法是对 unique 来自定义的,然后参数是表的名字,后面再跟一个 where 函数,用到了闭包,匿名函数查询同时满足两个条件的结果是否存在,返回查询结果。

如此,我们便完成了自定义复杂的唯一性验证。

总结

以上所述是小编给大家介绍的Laravel Validator 实现两个或多个字段联合索引唯一,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • YII2框架中查询生成器Query()的使用方法示例

    YII2框架中查询生成器Query()的使用方法示例

    这篇文章主要介绍了YII2框架中查询生成器Query()的使用方法,结合实例形式详细分析了YII2查询生成器Query()的基本功能与使用方法,需要的朋友可以参考下
    2020-03-03
  • PHP如何实现跨域

    PHP如何实现跨域

    这篇文章主要介绍了PHP如何实现跨域的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-05-05
  • FleaPHP框架数据库查询条件($conditions)写法总结

    FleaPHP框架数据库查询条件($conditions)写法总结

    这篇文章主要介绍了FleaPHP框架数据库查询条件($conditions)写法,结合实例形式总结分析了针对$conditions参数为整数,字符串,数组等情况的使用方法及各种查询技巧,需要的朋友可以参考下
    2016-03-03
  • php+mysql实现简单登录注册修改密码网页

    php+mysql实现简单登录注册修改密码网页

    这篇文章主要为大家详细介绍了php+mysql实现简单登录注册修改密码系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析

    Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析

    这篇文章主要介绍了Thinkphp 框架配置操作之动态配置、扩展配置及批量配置,结合实例形式分析了Thinkphp配置操作中动态配置、扩展配置及批量配置基本原理、实现方法与相关注意事项,需要的朋友可以参考下
    2020-05-05
  • Laravel框架模板加载,分配变量及简单路由功能示例

    Laravel框架模板加载,分配变量及简单路由功能示例

    这篇文章主要介绍了Laravel框架模板加载,分配变量及简单路由功能,结合实例形式分析了Laravel框架模板加载,分配变量及简单路由功能相关原理、操作技巧与注意事项,需要的朋友可以参考下
    2018-06-06
  • php fckeditor 调用的函数

    php fckeditor 调用的函数

    showfck() 编辑器调用函数
    2009-06-06
  • 在Laravel5中正确设置文件权限的方法

    在Laravel5中正确设置文件权限的方法

    这篇文章主要给大家介绍了关于如何在Laravel5中正确设置文件权限的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Laravel5具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-05-05
  • php实现aes加密类分享

    php实现aes加密类分享

    这篇文章主要介绍了php实现的aes加密类,代码中有使用方法,需要的朋友可以参考下
    2014-02-02
  • laravel实现分页样式替换示例代码(增加首、尾页)

    laravel实现分页样式替换示例代码(增加首、尾页)

    这篇文章主要给大家介绍了关于laravel实现分页样式替换的相关资料,实现了增加首、尾页的功能,文章通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-09-09

最新评论