Laravel 密码验证规则

2024-02-29

如何在验证器中添加密码验证规则?

验证规则:

密码包含以下五类中至少三类的字符:

  • 英文大写字符 (A – Z)
  • 英文小写字符 (a – z)
  • 10 基数 (0 – 9)
  • 非字母数字(例如:!、$、# 或 %)
  • 统一码字符

如何在验证器规则中添加上述规则?

我的代码在这里

// create the validation rules ------------------------
    $rules = array(
        'name'             => 'required',                        // just a normal required validation
        'email'            => 'required|email|unique:ducks',     // required and must be unique in the ducks table
        'password'         => 'required',
        'password_confirm' => 'required|same:password'           // required and has to match the password field
    );

    // do the validation ----------------------------------
    // validate against the inputs from our form
    $validator = Validator::make(Input::all(), $rules);

    // check if the validator failed -----------------------
    if ($validator->fails()) {

        // get the error messages from the validator
        $messages = $validator->messages();

        // redirect our user back to the form with the errors from the validator
        return Redirect::to('home')
            ->withErrors($validator);

    }

我在 Laravel 中遇到过类似的情况,并通过以下方式解决了它。

密码包含以下五类中至少三类的字符:

  • 英文大写字符 (A – Z)
  • 英文小写字符 (a – z)
  • 10 基数 (0 – 9)
  • 非字母数字(例如:!、$、# 或 %)
  • 统一码字符

首先,我们需要创建一个正则表达式并验证它。

你的正则表达式看起来像这样:

^.*(?=.{3,})(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[\d\x])(?=.*[!$#%]).*$

我已经测试并验证了它this https://regex101.com/r/lC1vM1/277地点。然而,以你自己的方式表现你自己,并进行相应的调整。这只是正则表达式的一个示例,您可以按照您想要的方式进行操作。

所以你的最终 Laravel正则表达式规则 https://laravel.com/docs/5.6/validation#rule-regex应该是这样的:

'password' => [
    'required',
    'min:6',
    'regex:/^.*(?=.{3,})(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[\d\x])(?=.*[!$#%]).*$/',
    'confirmed'
]

Note:

  1. 我已经在正则表达式站点和 Laravel 5 测试环境上对其进行了测试和验证,并且它有效。
  2. 我使用了 min:6,这是可选的,但拥有反映不同方面的安全策略始终是一个好习惯,其中之一是最小密码长度。
  3. 我建议您使用密码确认来确保用户输入正确的密码。
  4. 在 6 个字符内,我们的正则表达式应至少包含 3 个 a-z 或 A-Z 以及数字和特殊字符。
  5. 在转移到生产环境之前,请务必在测试环境中测试您的代码。
  6. 我在这个答案中所做的只是正则表达式密码的示例

关于 Laravel 中正则表达式规则的自定义验证消息,可以查看以下几个链接:

  • Laravel 验证自定义消息 https://stackoverflow.com/questions/23117999/laravel-validation-custom-message
  • Laravel 中正则表达式规则的自定义验证消息? https://stackoverflow.com/questions/20320148/custom-validation-message-for-regex-rule-in-laravel
  • Laravel 自定义验证消息 https://stackoverflow.com/questions/23996289/laravel-custom-validation-messages
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Laravel 密码验证规则 的相关文章

  • PHPExcel输出乱码

    我正在尝试 PHPExcel 附带的简单示例 01simple xls 我得到乱码输出 它 LibreOffice 想要导入文件 它认为字符集是西欧 DOS OS2 861 icelandic 输出是这样的
  • Mysqli 准备好的语句从数组动态构建 INSERT 查询

    我正在尝试用 PHP 而不是 OOP 开发我的函数 以创建 CRUD 目标是对任何表使用相同的函数 但我已经陷入了第一个表中 不知道该怎么做 我现在拥有的 function to avoid injections function vali
  • DOMDocument PHP 内存泄漏

    在 MAC 上的 MAMP 下运行 PHP 5 3 6 内存使用量每调用 x 次 3 到 8 次 就会增加 直到脚本因内存耗尽而终止 我该如何解决 libxml use internal errors true while true dom
  • magento 删除管理菜单项

    在magento中 是否可以删除管理中的菜单项 我有一个新模块 并将评论和评级拉到一个新部分 我不反对将它们也留在目录部分 但如果可能 并且干净 我想将其从那里删除 将下一行添加到扩展 config xml 文件
  • Laravel 验证:对 null 的成员函数调用失败()

    这段代码几天前还可以工作 但我似乎做了一些事情导致它崩溃 我有这条路线 Route post admin routemanagement AdminController addRoute 看起来像这样 public function add
  • 使用 PHP 查询更改表,列名未显示在 phpMyAdmin 中

    这是我的第一篇文章 这里有一篇类似的文章 phpMyAdmin 不显示添加的列 代码日志 https stackoverflow com questions 12960302 phpmyadmin doesnt show added col
  • MySQL JSON 存储与两个表

    与使用单独的元表相比 使用 JSON 在表中存储数据有什么好处吗 这是原始架构 Users Table UserId Username Etc 5 John Avatar Table Id UserId ImageName ImageTyp
  • 将数组文字传递给 PostgreSQL 函数

    我有一个包含 select 语句的 Postgres 函数 我需要使用包含字符串值数组的传入变量添加条件 CREATE OR REPLACE FUNCTION get questions vcode text RETURN return v
  • 通过自定义文本更改库存文本中的 WooCommerce 产品可用性

    我想更改库存数量后面的 有库存 文字 我尝试在我的 WordPress php 编辑器中添加此 PHP 代码 但它不起作用 你知道为什么吗 谢谢 add filter woocommerce get availability text bb
  • PHP 中的循环数组

    我创建了一个由部分和问题组成的数组 如何循环浏览各个部分并显示每个部分的嵌套问题 这是我创建数组的方式 db db open query SELECT FROM assessment selections WHERE assessment
  • 禁用选择标签内的一个选项值在 IE6Ha 中不起作用[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个包含 4 个值 a b c d 的选择框 我只想禁用下拉列表中的 c 我使用了禁用属性 它在所有浏览器中都有效 但在 IE6
  • PHP 在 IIS7 上未报告任何错误

    我正在使用我们的 XAMPP 设置作为测试服务器来开发 PHP 应用程序 一旦应用程序准备好部署 我必须将其上传到客户端的服务器 问题是客户端的服务器正在运行 IIS 7 每次出现 PHP 错误时 它只会显示一个空白页面 现在 我的应用程序
  • 比较 PHP 中的 unix 时间戳 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 在 PHP 中我有 diff abs
  • Ubuntu 12.04 上的 PHP 从 5.3 升级到 php 5.6

    我正在按照本教程将 php 从版本 5 3 升级到 5 6 http phpave com upgrade php 53 to php 56 on ubuntu 1204 lts http phpave com upgrade php 53
  • 将 __DIR__ 常量与字符串连接作为数组值,该数组值是 PHP 中的类成员

    谁能告诉我为什么这不起作用 这只是我在其他地方尝试做的事情的一个粗略的例子 stuff array key gt DIR value 但是 这会产生错误 PHP Parse error syntax error unexpected exp
  • Laravel 5.2 如何更新迁移而不丢失数据

    我使用的是 laravel 5 2 我通常会根据项目要求更新数据库 所以我希望在不丢失数据库记录的情况下执行此操作 我的意思不是如何为我的数据库播种 我的意思是当我的数据库处于活动状态并且我想更新它时抛出 laravel 迁移 我正要扔La
  • 使用单个查询和每用户密码盐进行用户登录

    我决定使用存储在数据库中的每用户盐来实现用户登录 盐作为密码的前缀 该密码使用 SHA 进行哈希处理并存储在数据库中 过去 当我不使用盐时 我会使用典型的方法 使用用户输入的用户名和密码来计算查询返回的行数 然而 对于每个用户的盐 您需要先
  • method_存在于父类php中

    我正在尝试使用 php 函数 method exists 但我需要检查该方法是否存在于对象的父类中 so class Parent public function myFunction class Child extends Parent
  • 通过API更新Twitter背景

    我在通过 Twitter 的 API 更新背景时遇到了一些问题 target url http www google com logos 11th birthday gif ch curl init curl setopt ch CURLO
  • PHP 文件由浏览器下载,而不是由本地开发服务器(MAMP)处理

    一切都很顺利 直到我添加AddHandler application x httpd php5s php到本地服务器文档根目录中的 htaccess 文件 根据我正在使用的站点 我经常更改该文件 因为我访问时这样做了http 本地主机 88

随机推荐

  • 使用 Rails 测试 PayPal

    我需要测试新的 PayPal 与我的应用程序的集成 我在开发环境中使用 PayPal 沙箱 为了测试整个界面 我发现ngrok https ngrok com 可能会解决来自 PayPal 的消息问题 我使用安装了 ngrokapt get
  • 如何在 IBM DB2 中的导出结果中包含列标题

    我试图使用命令从 DB2 中的表中导出数据 我想导出到 csv 文件中 但是列标题不存在 还需要列标题 那么我可以在 sql 查询中添加什么也获取列标题 这在最新的 2019 Db2 11 5 版本和 Db2 Warehouse 本地和云上
  • 电池使用情况 - iOS

    我想在应用程序的状态栏上显示应用程序的电池使用情况 它使用 GPS 因此 GPS 信号和应用程序的电池使用详细信息对于用户了解电池消耗情况很有用 有没有办法获取设备的电池使用情况 并仅显示消耗的电池量my app独自的 在仪器上 它显示随时
  • 带有目标目录的符号链接二进制文件

    我有一个二进制文件 它加载具有相对路径的资源 我想在 usr bin 中放置一个链接 我努力了ln s game directory game usr bin game 它启动了我的二进制文件 但无法加载我的资产 因为它显然找不到文件夹 a
  • 在搜索栏步骤上方添加具有不同字体大小的标签,与搜索栏拇指垂直对齐

    I would like to create a Seekbar above which there will be text label on each Seekbar step what it should look like is s
  • 使用 C# 设置进程“图像名称”和“描述”

    我想尽可能详细地讨论这个问题 这样问题就很容易理解answer able 本质上我需要一种设置方法进程名称 and 流程说明在应用程序上使用 C startup 这是我想要更改的示例 Note 我想用代码设置我自己的 C 应用程序图像和描述
  • 简单数据类型的互斥锁

    我对并发还很陌生 并且在决定如何使用互斥体时遇到困难 目前 它们散布在我的代码中两个线程交互的地方 这种互斥体的使用是否合适 class Foo public void SetMember int n AcquireMutex n n Re
  • 迭代 ArrayList 中的连续对象对

    我想从 ArrayList 获取对象对 以便可以在每个对象的元素之间执行计算 理想情况下 它应该迭代成对的对象 例如 在包含 obj1 obj2 obj3 obj4 的列表中 它应该遍历 obj1 obj2 obj2 obj3 和 obj3
  • 隐藏UIImagePickerControllerSourceTypceCamera工具栏,但具体按钮?

    为了使我的自定义工具栏在我的UIImagePickerControllerSourceTypeCamera 我必须像这样关闭相机控制 pickerOne showsCameraControls YES 我想展示变焦 闪光灯 切换相机以及对焦
  • 如何从 WSDL 文件生成 java 类

    我正在开发一个 Android 应用程序 我需要使用网络服务 我有一个 wsdl 文件 但我想将其转换为 java 以便我可以在我的 Java 程序中使用它的功能 有没有办法将 wsdl 文件转换为 Java 是的 您可以使用 Wsdl2j
  • 如何确保 CSS 在所有浏览器上都能正常工作,而无需在每个浏览器上进行肉眼测试?

    让一个网站的CSS支持不同版本的所有浏览器确实是一件很困难的事情 特别是 它需要设置不同的浏览器 我只是想知道是否可以测试 CSS 并确保它适用于所有浏览器 而无需打开每个浏览器并手动检查布局 或者 有没有快速或标准的方法来做到这一点 使用
  • Windows Phone 8.1 应用程序与数据库连接

    我对 Windows Phone 8 1 应用程序开发完全陌生 我正在尝试使用 Visual Studio 2013 开发一个带有数据库的简单应用程序 它不是 silverlight 应用程序 我的应用程序只有一个文本字段和一个按钮 我在本
  • Shutil.move(scr, dst) 得到 IOError: [Errno 13] Permission returned and 3 more Errors

    Documents pdf docx txt for i in range len Documents if glob glob Documents i print Documents i True shutil move glob glo
  • scipy 不使用 anaconda 的本地库作为 libgcc

    我在用着Anaconda 4 10 3 with Python 3 9 7 Scipy 1 7 1 on Ubuntu 16 04 6 我需要运行的脚本使用 Scipy 的优化 并抛出以下错误 ImportError usr lib x86
  • 自定义 AWS Amplify UI?

    相信我可能会以错误的方式处理这个问题 并且非常感谢有关该问题的指导 我使用 React Native 和 AWS Amplify 进行身份验证 我想做的是改变元素的颜色和大小 看到其他人提到使用主题 但没有任何效果 例如 更改登录按钮的颜色
  • 带 CursorAdapter 的 ListView 中的复选框侦听器

    我有一个非常相似的问题这个帖子 https stackoverflow com questions 5444355 android listview with checkbox problem 在 ListView 的每一行中 我都有一个带
  • 有什么解决方法可以让复制/粘贴在 Mac 上的 JDK 7 AWT Applet 中工作吗?

    由于 Apple 在 Mac 上强制更新到 JDK 7 旧的 AWT 小程序不再支持复制 粘贴 例如 如果您访问 简单的 AWT 文本字段示例 http www willamette edu gorr classes cs231 lectu
  • 是否可以在运行时通过反射“探索”另一个对象中定义了哪些对象?

    考虑这段代码 object A object AA extends A object AB extends A object AC extends A class A 如何 看到 对象中定义的对象A在运行时 我想到了一个方法object A
  • Google Maps API,需要购买吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我目前正在创建一个应用程序 iPhone iPad Android 它使用地图来显示租赁公司提供的房屋 该应用程序是free在所有商店 我已阅读条款并
  • Laravel 密码验证规则

    如何在验证器中添加密码验证规则 验证规则 密码包含以下五类中至少三类的字符 英文大写字符 A Z 英文小写字符 a z 10 基数 0 9 非字母数字 例如 或 统一码字符 如何在验证器规则中添加上述规则 我的代码在这里 create th