首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    PHP中正则的使用

    正则表达式,作为一种快速、便捷的处理字符串的工具,在各种编程语言中都有着广泛的用途,通过在PHP中的一些使用,下面记录一下关于PHP中正则使用的一些技巧。...PHP中的正则函数: php中有两套正则函数,两者功能差不多,分别为: 一套是由PCRE(Perl Compatible Regular Expression)库提供的。...使用以“ereg_”为前缀命名的函数;(POSIX的正则函数库,自PHP 5.3以后,就不在推荐使用,从PHP6以后,就将被移除) 由于POSIX正则即将推出历史舞台,并且PCRE和perl的形式差不多...,更利于我们在perl和php之间切换,所以这里重点介绍PCRE正则的使用。...ereg                        http://cn.php.net/manual/en/function.ereg.php         3、PHP正则函数

    4.7K30

    Discourse 如何限制注册用户的密码长度

    在默认的情况下 Discourse 限制用户输入密码的长度要超过 10 个字符。 这个实在是太长了,用户交互性不好。 如何修改这个密码长度到 6 位?...你可以登录后台的管理员界面,然后搜索关键字 password 你可以看到上面有 2 个选项,一个是登录用户的密码,一个是管理员的密码。...在默认情况下,登录用户的密码是 10 位,管理员的密码是 15 位。 系统允许的最短的密码位数为 8 位。 所以你是没有办法设置到 6 位的。...为了更好的交互,我们建议登录用户的密码设置为 8 位,管理员的密码可以考虑设置为 10 位,或者都设置为 8 位。 你可以修改上面的配置,然后保存就可以了。 修改配置后,保存退出。

    2.4K00

    PHP 正则表达式及常用正则汇总

    匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff] 评注:可以用来计算字符串的长度...(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:\n\s*\r 评注:可以用来删除空白行 匹配HTML标记的正则表达式:正则表达式:\n[\s| ]*\r 28.    匹配HTML标记的正则表达式:/.*|/ 29.    ...匹配首尾空格的正则表达式:(^\s*)|(\s*$) 30.    匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]...匹配首尾空格的正则表达式:(^\s*)|(\s*$) 155.    156.    匹配IP地址的正则表达式:/(\d+)\.(\d+)\.(\d+)\.

    4.4K51

    PHP正则表达式

    正则表达式 1、正则表达式中包含三种元素分别为:量词、元字符、修饰符 2、前导字符串:就是符号前面的一个字符或字符串 量词 说明 + 匹配任何至少包含一个前导字符串 * 匹配任何包含零个或多个前导字符串...a-zA-Z0-9和下划线的字符串 \d 匹配任何包含数字字符 \D 匹配任何非数字字符 \s 匹配任何空白字符 \S 匹配任何非空白字符 \b 匹配是否到达了单词边界 \B 匹配没有到达了单词边界 \ 匹配正则中的特殊字符...\w+php/','php123phpphp456php',$arr);   print_r($arr);   //结果为Array ( [0] => Array ( [0] => php123phpphp456php...('/php[0-9]/','php5php6php7',$arr);   print_r($arr);   //结果为Array ( [0] => Array ( [0] => php5...本文链接:https://www.xy586.top/12426.html 转载请注明文章来源:行云博客 » PHP正则表达式

    2.6K10

    PHP正则表达式

    ,遵循以下2个基本原则: 1.最左原则:正则表达式总是从目标字符串的最左侧开始,依次匹配,直到匹配到符合表达式要求的部分,或直到匹配目标字符串的结束。...2.最长原则:对于匹配到的目标字符串,正则表达式总是会匹配到符合正则表达式要求的最长的部分;即贪婪模式 那怎么开始呢,首先从分隔符开始写起,常用包括 / ; #;~,用于表明一串正则的开始。...正则表达式是自左向右的顺序使用原子和元字符进行拼接。 比如'zxcv',进行匹配时,‘/.*/’,其中.*代表zxcv 。 那么通用原子和元字符有哪些呢?...正则表达式中可以使用 ASCII 编码。 • \nm标识一个八进制转义值或一个向后引用。如果 \nm 之前至少有 nm 个获得子表达式,则 nm 为向后引用。...d/'; preg_match($pattern,$str,$match); var_dump($match) ;//asd php常用正则函数; 匹配

    5.5K10

    等保测评主机安全之centos密码长度

    密码长度,作为等级保护主机测评项里中密码复杂度要求之一,是必须要查的。 在《等级测评师初级教程》里,对于密码长度的设置指向了/etc/login.defs里的PASS_MIN_LEN字段。...PASS_MIN_LEN 5 简单明了,对新密码的长度最小值做出了限制。 不过,实际上这个参数是无效的,至少在centos6以及以上版本里,这个参数对新密码长度没有一点点的制约。...比如大家可以试一试,给PASS_MIN_LEN设一个值,再用非root账户去改改密码,看看对新密码长度有没有影响。甚至,还可以直接删除login.defs文件,试一试。...所谓的应用程序,就包括在linux里使用的命令,好,回到密码长度这个话题。 修改密码时对于密码的一系列验证由pam_cracklib.so模块实现,那么谁去调用?...比如ocredit(特殊字符)的值是2的时候,就代表有最多有2个特殊字符的长度额外能加1。 当你设置的密码是:@#¥,它的长度被算作是5,而不是3。

    2K21

    【PHP小课堂】PHP中PRGE正则函数的学习

    PHP中PRGE正则函数的学习 正则表达式的作用想必不用我多说了,大家在日常的开发中或多或少都会接触到。特别是对于一些登录(邮箱、手机号)以及网页爬虫来说,正则表达式就是神器一般的存在。...在 PHP 中,有两种处理正则表达式的函数,今天我们就来学习其中的一种。...错误信息 最后我们再看看错误信息的展示,对于正则匹配的错误,在 PHP8 之前仅有一个错误号,作用不大。.../2021/03/source/6.PHP中PRGE正则函数的学习.php on line 332 // 1 // print_r(preg_last_error_msg()); // php8 而在...不过我的电脑上还没有安装 PHP8 所以这块内容就不展示了。 总结 PHP 中正则操作的函数就这些,但正则真正的精髓其实是在于正则表达式怎么写这一块。

    1.2K10

    PHP处理密码的几种方式

    在使用PHP开发Web应用的中,很多的应用都会要求用户注册,而注册的时候就需要我们对用户的信息进行处理了,最常见的莫过于就是邮箱和密码了,本文意在讨论对密码的处理:也就是对密码的加密处理。...MD5 相信很多PHP开发者在最先接触PHP的时候,处理密码的首选加密函数可能就是MD5了,我当时就是这样的: $password = md5($_POST["password"]); 上面这段代码是不是很熟悉...然而MD5的加密方式目前在PHP的江湖中貌似不太受欢迎了,因为它的加密算法实在是显得有点简单了,而且很多破解密码的站点都存放了很多经过MD5加密的密码字符串,所以这里我是非常不提倡还在单单使用MD5来加密用户的密码的...加密后字串总是60个字符长度。...} 只有这样,PHP的Password Hashing API才会知道我们重现更换了加密方式,这样的主要目的就是为了后面的密码验证。

    1.2K30

    eval长度限制绕过 && PHP5.6新特性

    昨天晚上 @roker 在小密圈里问了一个问题,就是eval(xxx),xxx长度限制为16个字符,而且不能用eval或assert,怎么执行命令。 我把他的叙述写成代码,大概如下: PHP会认为N是一个常量,但我之前并没有定义这个常量,于是PHP就会把它转换成字符串'N';第二个参数是要写入的数据,a也被转换成字符串'a';第三个参数是flag,当flag=8的时候内容会追加在文件末尾...于是微博上 @买贴膜的 想出一个办法,每次向文件'N'中写入一个字母或数字,最后构成一个base64字符串,再包含的时候使用php://filter对base64进行解码即可。...变长参数是PHP5.6新引入的特性,文档在此: http://php.net/manual/zh/migration56.new-features.php 和Python中的**kwargs,类似,在PHP...POST /test.php?

    3.6K10

    PHP处理密码的几种方式

    在使用PHP开发Web应用的中,很多的应用都会要求用户注册,而注册的时候就需要我们对用户的信息进行处理了,最常见的莫过于就是邮箱和密码了,本文意在讨论对密码的处理:也就是对密码的加密处理。...MD5 相信很多PHP开发者在最先接触PHP的时候,处理密码的首选加密函数可能就是MD5了,我当时就是这样的: $password = md5($_POST["password"]); 上面这段代码是不是很熟悉...然而MD5的加密方式目前在PHP的江湖中貌似不太受欢迎了,因为它的加密算法实在是显得有点简单了,而且很多破解密码的站点都存放了很多经过MD5加密的密码字符串,所以这里我是非常不提倡还在单单使用MD5来加密用户的密码的...加密后字串总是60个字符长度。...} 只有这样,PHP的Password Hashing API才会知道我们重现更换了加密方式,这样的主要目的就是为了后面的密码验证。

    1.9K40

    最安全的PHP密码加密方法

    在PHP开发过程中,很多人PHP密码加密都是用的md5和sha1(包括sha256.......)...答:有空大家不妨去看一下:PHP“密码散列安全”问题与解决方法 最安全的PHP密码加密方法:PHP官方自带的密码哈希函数 password_hash() 常用的MD5、SHA1、SHA256哈希算法,是面向快速...还好,PHP内置了密码哈希函数password_hash,使用这个方法,PHP会升级底层的算法,达到如今的安全标准水平。...注意:PHP 5.5 之后引入 Password hashing API 用于创建和校验哈希密码,它属于内核自带,无需进行任何扩展安装和配置。 函数具体怎么用?...php /** - 我们想要使用默认算法散列密码 - 当前是 BCRYPT 算法,并会产生 60 个字符的结果。 - 据说bcrypt算法永不过时。

    5K40

    PHP密码散列算法的学习

    PHP密码散列算法的学习 不知道大家有没有看过 Laravel 的源码。在 Laravel 源码中,对于用户密码的加密,使用的是 password_hash() 这个函数。...这个函数是属于 PHP 密码散列算法扩展中所包含的函数,它是集成在 PHP 源码中的扩展,并且还是 PHP 官方所推荐的一种密码加密方式。那么它有什么好处呢?...使用密码散列函数加密数据 重点还是在这个加密函数的应用上,我们就来看看 password_hash() 这个函数的使用。这个函数是在 PHP5.5 之后就已经提供了,大家可以放心地使用。...此外,这个比较函数也是能够防御时序攻击的,它对任何循环次数的密码的比较返回时间是固定长度的。关于时序攻击的内容大家请自行百度。...总结 既然这套函数已经成为 PHP 官方所推荐的函数了,那自然也是我们日后应该学习的重点内容,就连大部分的 PHP 框架中的用户类型的密码加密也都是使用的这套函数了。

    2.5K10

    php utf-8编码 正则匹配中文

    unicode里面 中文的区域的0x4e00-0x9fa5 在java或者js这种已unicode编码处理字符串的编程语言中 /^[\u4e00-\u9fa5]+$/就可以判断一个字符串是否全部为中文 那么php...之前有一个表达式 “/^[\x80-\xff]+$/” 仅仅可以匹配是否含有非ascll字符 而汉字只是其中一个比较小的区域 不太精确 由于我的页面编码是utf-8的 于是把js的表达式搬到php...中来 提示PCRE不支持”\u”和其他乱七八糟的一大堆东西 后来查资料了解到 php的正则有一种叫做字符组的东西 用\x{…}表示 于是把表达式改成”/^[\x{4e00}-\x{9fa5}]+...又提示”\x”表达式后的数字太大 又查了资料 了解到可以使用修正模式”u” 让程序把后面当成unicode字符处理 于是改成了”/^[\x{4e00}-\x{9fa5}]+$/u” 测试成功 所以php...下正则匹配中文的表达式是 “/^[\x{4e00}-\x{9fa5}]+$/u” 这个仅适用于utf-8编码

    4.5K40
    领券