这里有新鲜出炉的 PHP 面向对象编程,程序狗速度看过来!
PHP(外文名: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言。语法吸收了 C 语言、Java 和 Perl 的特点,入门门槛较低,易于学习,使用广泛,主要适用于 web 开发领域。PHP 的文件后缀名为 php。
这篇文章主要介绍了 PHP 判断密码强度的方法, 涉及 php 正则判断、ajax 交互及页面元素动态操作相关实现技巧, 需要的朋友可以参考下
本文实例讲述了 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 页面
- <table cellspacing="0" cellpadding="0">
- <tr>
- <td>输入密码:</td>
- <td colspan="4"><input type="password" value="" name="newpwd" onblur="getPassword();" />
- </tr>
- <tr>
- <td>密码强度:</td>
- <td id="idSM1" align="middle" width="20%"><span style="height:0px; line-height:0px;"> </span><span id="idSMT1" style="DISPLAY: none">弱</span></td>
- <td id="idSM2" style="BORDER-LEFT: #fff 1px solid" align="middle" width="20%"><span style="height:0px; line-height:0px;"> </span><span id="idSMT0" style="DISPLAY:inline; FONT-WEIGHT: normal; COLOR: #666">无</span><span id="idSMT2" style="DISPLAY: none">中等</span></td>
- <td id="idSM3" style="BORDER-LEFT: #fff 1px solid" align="middle" width="20%"><span style="height:0px; line-height:0px;"> </span><span id="idSMT3" style="DISPLAY: none">强</span></td>
- <td id="idSM4" style="BORDER-LEFT: #fff 1px solid" align="middle" width="20%"> <span style="height:0px; line-height:0px;"> </span><span id="idSMT4" style="DISPLAY: none">极好</span></td>
- </tr>
- </table>
三、js
- <script>
- 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
- <style>
- .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;}
- </style>
希望本文所述对大家 PHP 程序设计有所帮助。
来源: http://www.phperz.com/article/17/0806/339707.html