php密码复杂,PHP判断密码强度的方法详解

2023-11-13

本文实例讲述了PHP判断密码强度的方法。分享给大家供大家参考,具体如下:

一、php页面

$score = 0;

if(!empty($_GET['value'])){ //接收的值

$str = $_GET['value'];

} else{

$str = '';

}

if(preg_match("/[0-9]+/",$str))

{

$score ++;

}

if(preg_match("/[0-9]{3,}/",$str))

{

$score ++;

}

if(preg_match("/[a-z]+/",$str))

{

$score ++;

}

if(preg_match("/[a-z]{3,}/",$str))

{

$score ++;

}

if(preg_match("/[A-Z]+/",$str))

{

$score ++;

}

if(preg_match("/[A-Z]{3,}/",$str))

{

$score ++;

}

if(preg_match("/[_|\-|+|=|*|!|@|#|$|%|^|&|(|)]+/",$str))

{

$score += 2;

}

if(preg_match("/[_|\-|+|=|*|!|@|#|$|%|^|&|(|)]{3,}/",$str))

{

$score ++ ;

}

if(strlen($str) >= 10)

{

$score ++;

}

echo $score;

exit;

二、html页面

输入密码:
密码强度:    中等    极好

三、js

function getPassword(){

var value = $("input[name='newpwd']").attr('value');

$.get('index.php?r=account/testpwd',{value:value},function(data){

if(data>=1 && data<=3){

$('#idSM1').attr('class','pwdChkCon1'); //弱

$('#idSM2').attr('class','pwdChkCon0');

$('#idSM3').attr('class','pwdChkCon0');

$('#idSM4').attr('class','pwdChkCon0');

$('#idSMT1').show();

$('#idSMT0').hide();

$('#idSMT2').hide();

$('#idSMT3').hide();

$('#idSMT4').hide();

} else if(data>=4 && data<=6){ //中等

$('#idSM1').attr('class','pwdChkCon2');

$('#idSM2').attr('class','pwdChkCon2');

$('#idSM3').attr('class','pwdChkCon0');

$('#idSM4').attr('class','pwdChkCon0');

$('#idSMT0').hide();

$('#idSMT1').hide();

$('#idSMT2').show();

$('#idSMT3').hide();

$('#idSMT4').hide();

} else if(data>=7 && data<=8){ //强

$('#idSM1').attr('class','pwdChkCon3');

$('#idSM2').attr('class','pwdChkCon3');

$('#idSM3').attr('class','pwdChkCon3');

$('#idSM4').attr('class','pwdChkCon0');

$('#idSMT0').hide();

$('#idSMT1').hide();

$('#idSMT2').hide();

$('#idSMT3').show();

$('#idSMT4').hide();

} else if(data>=9 && data<=10){ //极好

$('#idSM1').attr('class','pwdChkCon4');

$('#idSM2').attr('class','pwdChkCon4');

$('#idSM3').attr('class','pwdChkCon4');

$('#idSM4').attr('class','pwdChkCon4');

$('#idSMT0').hide();

$('#idSMT1').hide();

$('#idSMT2').hide();

$('#idSMT3').hide();

$('#idSMT4').show();

}

});

}

四、css

.pwdChkCon0 {BORDER-RIGHT: #bebebe 1px solid;BORDER-BOTTOM: #bebebe 1px solid;BACKGROUND-COLOR: #ebebeb;TEXT-ALIGN: center;}

.pwdChkCon1 {BORDER-RIGHT: #bb2b2b 1px solid;BORDER-BOTTOM: #bb2b2b 1px solid;BACKGROUND-COLOR: #ff4545;TEXT-ALIGN: center;}

.pwdChkCon2 {BORDER-RIGHT: #e9ae10 1px solid;BORDER-BOTTOM: #e9ae10 1px solid;BACKGROUND-COLOR: #ffd35e;TEXT-ALIGN: center;}

.pwdChkCon3 {BORDER-RIGHT: #267a12 1px solid;BORDER-BOTTOM: #267a12 1px solid;BACKGROUND-COLOR: #3abb1c;TEXT-ALIGN: center;}

.pwdChkCon4 {BORDER-RIGHT: #267a12 1px solid;BORDER-BOTTOM: #267a12 1px solid;BACKGROUND-COLOR: #3abb1c;TEXT-ALIGN: center;}

PS:这里再为大家提供几款相关在线工具供大家参考使用:

希望本文所述对大家PHP程序设计有所帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

php密码复杂,PHP判断密码强度的方法详解 的相关文章

  • 在离线渲染器中应用MERL BRDF

    BRDF Bidirectional Reflection Density Function 即出射光线的radiance和入射光线的irradiance的比值 在图形学中被用来描述物体的表面反射属性 BRDF的值一般来说由几个参数决定 入
  • MyBatis的使用

    目录 一 Sring项目中关于MyBatis的配置 1 在pom xml中引入框架依赖 2 配置文件配置相关信息 3 设置mapper中的xml文件内容 4 根据以上配置实现的查询示例 1 添加实体类 2 添加mapper接口 3 添加Us
  • FreeRTOS教程——队列(三)

    Free RTOS队列 队列函数库 1 xQueueCreate queue h xQueueHandle xQueueCreate unsigned portBASE TYPE uxQueueLength unsigned portBAS
  • java中的常用语句

    Java中的常用语句 一 Java中的语句由3大类的结构 1 顺序结构 自上而下一行一行的有序的执行 2 选择结构 1 If语句结构 2 Switch语句结构 3 循环结构 1 For循环 2 While循环 3 Do while 循环 二
  • OpenCV——常用函数

    一 绘制圆形 使用OpenCV库中的 circle 函数在图像上绘制圆形的代码 cv circle overlay pt 2 cv Scalar 0 green red 1 具体来说 它的参数如下 overlay 图像 在该图像上绘制圆形
  • input框在chrome浏览器下粘贴的默认底色

    Chrome浏览器对于input输入框的值会有一个默认的记录 导致后续在输入的时候出现 选择后在input框会出现一个默认底色 如图 这样对整个界面而言就感觉恨不协调 为了消去这种现象 可以在css中引入一下代码 input webkit
  • SpringMVC配置HelloWorld

    1 配置web xml文件
  • CrossEntropyloss function

    这里写目录标题 两部分 Part One 绕绕 可以不看 Part Two 清晰易懂 一定要看 两部分 Part One 绕绕 可以不看 Cross entropy loss function又称交叉熵损失 是基于one hot编码的 举个
  • 春秋云镜 CVE-2017-1000480

    春秋云镜 CVE 2017 1000480 Smarty lt 3 1 32 PHP代码执行漏洞 靶标介绍 3 1 32 之前的 Smarty 3 在未清理模板名称的自定义资源上调用 fetch 或 display 函数时容易受到 PHP
  • 根因分析告警(进行根因分析的要素)

    本文目录一览 1 相比传统运维工具 AIOps的优势在哪里 2 根因分析法是什么 3 IT运维平台算法背后的两大 神助攻 4 系统管理提供什么 日志管理和备份恢复功能 相比传统运维工具 AIOps的优势在哪里 所谓的AIOps 简单理解就是
  • ctf.show web3 文件包含+php伪协议+命令执行

    ctf show web3 php伪协议 文件包含 命令执行 题目的提示 一开始的页面 看到这个语句 那就是文件包含了 先试下file etc passwd 有反应 试下有没有flag txt文件 好像没有这个文件 那现在我们利用php伪协
  • Ubuntu18.04找不到wifi适配器解决办法以及怎么上网

    目录 一 有线上网办法 二 ubuntu找不到wifi适配器解决办法 三 有线无线均上不了网办法 四 最终问题解决 写在前面 如果大家已经尝试了很多方法进来的 可以先看看我目录里的第四部分 说不定跟我同样的问题 一 有线上网办法 拿起你的手
  • 读傅里叶级数有感

    老实讲 傅里叶级数还真的挺厉害的 但是 想到这个东西的人很厉害 把它说明白的人也很厉害 唯一不厉害的就是 指定我们教材的那帮人和学这些教材出来自以为他们掌握了这些内容却实际上根本讲不明白的人 好吧 其实不得已 看到图像可以从时域和频域两个维
  • 五万字整理Mybatis 入门只需要一篇文章

    这里写目录标题 一 简介 1 1 什么是mybatis 1 2 持久化 1 3 持久层 1 4 为什么需要学习mybatis 二 mybatis中的专业名词 三 第一个mybatis程序 3 1 搭建环境 3 1 1 创建一个数据库 3 1
  • 堆栈详解(数据与内存中的存储方式)

    转自 http www 360doc com content 11 0428 18 6580811 112988089 shtml char r hello word char b hello word r w b w 其实应该是语法错误
  • 从远程桌面客户端提取明文凭证的工具RdpThief

    介绍 远程桌面 RDP 是用于管理Windows Server的最广泛使用的工具之一 除了被管理员使用外 也容易成为攻击者的利用目标 登录到RDP会话的凭据通常用于是具有管理权限的 这也使得它们成为红队行动的一个理想目标 站在传统的角度看
  • Java实现S-DES加密算法

    S DES 为了更好的理解DES算法 美国圣塔克拉拉大学的Edward Schaefer教授于1996年开发了Simplified DES方案 简称S DES方案 它是一个供教学二非安全的加密算法 它与DES的特性和结构类似 但参数小 明文
  • IDEA Services窗口启动应用后突然不显示端口号

    转载 原先可以显示端口号的 但是换了个工程以后突然就不显示了 网上对于新安装的idea不显示端口号的解决方案并不适用 好在找到了解决办法 处理前 处理后 1 打开文件管理器 2 打开路径C Users l用户名 AppData Local
  • narwal无法连接机器人_懒无止境 能自己洗抹布的云鲸J1扫拖机器人

    0 篇首语 如果让我总结过去的2019年又哪几样产品 显著的提升了我的幸福感让生活变得更加方便 那么智能指纹锁和扫地机器人一定可以排在最前面 指纹锁其实不用多说出门无需担心没带钥匙 抬手就能开门的流畅体验确实是非常非常的方便 而扫地机器人也

随机推荐