首页
学习
活动
专区
圈层
工具
发布

PHP正则替换preg_replace函数的使用

preg_replace("/0/","A",$str); 这样就是将0变成A的意思了 echo preg_replace("/[0-9]/","",$str);//去掉所有数字 echo preg_replace...也是字符串,那么所有模式都使用这个字符串来匹配; 图片 replace少于 2.pattern是数组,replace也是数组,则中对应的 元素进行替换 3.如果数组pattern大于replace,...,一种是\n,一种是${n},推荐使用第二种写法.会把目标字符串匹配到的pattern中的原子,按照要求变化目标字符串的格式,或者匹配的原子原样输出(这里举两个例子) 把时间按照 下划线分割开来,${3...$limit的使用,第四个参数的意思是每个模式在每个subject上进行替换的最大次数 如果limit为n,它只用正则替换n次 6.第五个参数count的使用,count的意思是,subject目标字符串被替换的次数...,拿第五点的例子来说 上面代码中的例子运行结果如下: 附加: preg_replace与str_replace的关系是什么呢?

4.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    存储型XSS的攻防:不想做开发的黑客不是好黑客

    写入一段平台生成的xss脚本: 当某人进入带有这个脚本的页面时,js脚本会获取他的cookie并发往xss平台。...首先,应该有前端展示的页面Message_Board.php和后端存储数据的页面addMessage.php ?...0x03、使用preg_replace()函数进行正则表达式过滤script关键字 $nickname = preg_replace( "/php给我们提供了htmlentities()函数: $nickname = htmlentities(@$_POST['nickname']);//昵称 htmlentities()函数的作用是把字符转换为...黑客在当前场景下已经无法攻击了(在某些其他场景,即使使用了htmlentities()函数,仍然是可以攻击的,这就不在本文讨论范围之内了) 0x06、总结 开发者不应该只考虑关键字的过滤,还应该考虑特殊符号的过滤

    2.4K20

    【黄啊码】大多数人都会忽略PHP的这些安全设置

    如果不限制使用下面的脚本代码(hack.php)可以获取到系统密码。 的设计初衷是为了保护服务器和用户,抵御PHP程序和PHP核心中已知或者未知的缺陷(感觉挺实用的,可以抵御一些小攻击)。Suhosin有两个独立的部分,使用时可以分开使用或者联合使用。...;防止目录穿越攻击) 允许禁止preg_replace()  允许禁止eval()函数 通过配置一个最大执行深度,来防止无穷递归 支持每个vhost配置黑白名单 为代码执行提供分离的函数黑白名单...防止mail()函数的新行攻击 防止preg_replace()的攻击 Session 保护 加密session数据 防止session被劫持 防止超长的session id...phpecho htmlentities('');eval('echo htmlentities("");'); 黑名单 ##显式指定指定黑名单列表suhosin.executor.func.blacklist

    1.7K20

    PHP安全配置优化详解

    4.文件系统限制 可以通过open_basedir来限制PHP可以访问的系统目录。 如果不限制使用下面的脚本代码(hack.php)可以获取到系统密码。 的部分,使用时可以分开使用或者联合使用。 第一部分是一个用于PHP核心的补丁,它能抵御缓冲区溢出或者格式化串的弱点(这个必须的!)...preg_replace() 允许禁止eval()函数 通过配置一个最大执行深度,来防止无穷递归 支持每个vhost配置黑白名单 为代码执行提供分离的函数黑白名单 防止HTTP响应拆分漏洞 防止脚本控制...memory_limit选项 保护PHP的superglobals,如函数extract(),import_request_vars() 防止mail()函数的新行攻击 防止preg_replace()...php echo htmlentities(''); eval('echo htmlentities("");'); 黑名单 suhosin.executor.func.blacklist

    1.4K00

    最全最详细的PHP面试题(带有答案)

    这篇文章介绍的内容是关于最全最详细的PHP面试题(带有答案),有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 1、__FILE__表示什么意思?(5分) 文件的完整路径和文件名。....png 7、写出php进行编码转换的函数(5分) 微信图片_20191127145357.png 8、$str = “1,3,5,7,9,10,20”,使用什么函数可以把字符串str转化为包含各个数字的数组....png 11、一个文件的路径为/wwwroot/include/page.class.php,写出获得该文件扩展名的方法(5分) 微信图片_20191127145702.png 12、你使用过哪种PHP...数据库db_test里已建有表friend,数据库的连接用户为root,密码为123 friend表字段为:id,name,age,gender,phone,email 请使用php连接mysql,选择出..._20191127145850.png 以上就是最全最详细的PHP面试题(带有答案)的详细内容

    2K20

    PHP开发者的九条建议

    2.明确地知道各个比较操作符的差别 PHP的比较操作符,这其实可以说是一个很小的注意点,但是在某些时候真的很重要。...在开发PHP应用的时候,我首先会推荐大家使用PhpStorm,这么智能的IDE会帮你解决掉很多不必要的错误,比如很多Laravel的初学者都会遇到类似: App\Http\Controller\Article...5.多用str_replace() 在很多时候我们需要对一些字符串进行替换,在PHP中有以下几个函数可以达到这个目的: str_replace() ereg_replace() preg_replace...() 如果你确实是需要使用正则匹配,那就使用preg_replace(),而如果在可实现替换的情况下,请使用str_replace(),因为据不完全统计,str_replace()的效率在这三个当中是最高的...$host : htmlentities($host); 7.使用缓存 目前PHP热门的缓存技术可能就是Redis和Memcached了,在PHP的官方文档中,也有Memcached的使用教程,至于Redis

    93310

    给PHP开发者的九条建议

    2.明确地知道各个比较操作符的差别 PHP的比较操作符,这其实可以说是一个很小的注意点,但是在某些时候真的很重要。...在开发PHP应用的时候,我首先会推荐大家使用PhpStorm,这么智能的IDE会帮你解决掉很多不必要的错误,比如很多Laravel的初学者都会遇到类似: App\Http\Controller\Article...5.多用str_replace() 在很多时候我们需要对一些字符串进行替换,在PHP中有以下几个函数可以达到这个目的: str_replace() ereg_replace() preg_replace...() 如果你确实是需要使用正则匹配,那就使用preg_replace(),而如果在可实现替换的情况下,请使用str_replace(),因为据不完全统计,str_replace()的效率在这三个当中是最高的...$host : htmlentities($host); 7.使用缓存 目前PHP热门的缓存技术可能就是Redis和Memcached了,在PHP的官方文档中,也有Memcached的使用教程,至于Redis

    1.1K30

    渗透专题丨web Top10 漏洞简述(2)

    • 使用 safe_mode_exec_dir 执行可执行的文件路径将 php.ini 文件中的 safe_mode 设置为 On,然后将允许执行的文件放入一个目录,并使用safe_mode_exec_dir...>请输入{${phpinfo()}}注释:preg_replace 使用了 /e 模式,导致可以代码执行4、代码执行防御方法• 使用 json 保存数组,当读取时就不需要使用 eval• 对于必须使用 ...eval 的地方,一定严格处理用户数据(白名单、黑名单)• 字符串使用单引号包括可控代码,插入前使用 addslashes 转义(addslashes、魔数引号、htmlspecialchars、 htmlentities...、mysql_real_escape_string)• 不要使用 preg_replace 的 e 修饰符,使用 preg_replace_callback()替换(preg_replace_callback...())• 若必须使用 preg_replace 的 e 修饰符,则必用单引号包裹正则匹配出的对象(preg_replace+正则)CSRF漏洞1、简述CSRF 定义: 跨站请求伪造(英语:Cross-site

    1.3K30

    XSS跨站脚本攻击

    在html中有些字符,像(的,对HTML(标准通用标记语言下的一个应用)来说是有特殊意义的,所以这些字符是不允许在文本中使用的。要在HTML中显示(使用实体字符。   ...在PHP中已经存在这样子功能的函数,即是htmlentities($str)函数。 与之相反的就是html_entity_decode($str)函数,它将实体名称转换为相应的符号。   ...因此我们在过滤数据的时候需要仔细分析哪些数据是有特殊要求(例如输出需要html代码、javascript代码拼接、或者此表单直接允许使用等等),然后区别处理!   ...5.4、PHP中的相应函数 【详细看PHP手册】 这里可能不全,想了解更多的看手册。...strip_tags($str, [允许标签])  #从字符串中去除 HTML 和 PHP 标记 htmlentities($str)函数    #转义html实体 html_entity_decode

    2.4K30
    领券