27.字符串替换 PHP课件 最新版.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
字符串替换替换字符有时候我们的网站发布评论的时候需要进行一些内容的过滤,一些脏话、敏感词、特殊词语都需要被屏蔽替换成*号或者x/manual/zh/language.pseudo-types.php%23language.types.mixedmixed?str_replace?(?/manual/zh/language.pseudo-types.php%23language.types.mixedmixed?$search?,?/manual/zh/language.pseudo-types.php%23language.types.mixedmixed?$replace?,?/manual/zh/language.pseudo-types.php%23language.types.mixedmixed?$subject?[,?int?$count?] )使用str_replace可以简单完成这个工作,第一个参数是需要查找的敏感词,第二个参数是需要被替换成的文字,第三个参数是原始的文本$str?=?天上满天星,地下满山灯,满天星亮满天庭,满山灯接满天星;echo?str_replace(星,?云,?$str);获取替换次数$count?=?0;$str?=?天上满天星,地下满山灯,满天星亮满天庭,满山灯接满天星;str_replace(星,?云,?$str,?$count);echo?$count;?//?3根据所学的知识,我们知道,一个函数只能返回一个值,str_replace的返回值是替换后的文字,那么如果还想要获得替换的次数,就不能使用返回值了$count是个传值的参数,在函数的执行过程中,$count的值会发生改变,函数执行完成后,我们可以获取到新的值批量替换字符str_replace的前两个参数也可以使用数组,从而实现批量的替换,显然两个数组的元素个数必须保持一致$str?=?天上满天星,地下满山灯,满天星亮满天庭,满山灯接满天星;echo?str_replace([星,?灯],?[云,?树],?$str);如果替换数组个数少于查询数组个数,那么未匹配上的会被替换为空echo?str_replace([星,?灯],?[云],?$str);如果替换的是字符串,那么查询数组的每个元素都会被替换为该字符串echo?str_replace([星,?灯],?云,?$str);思考我们经常在电视节目中看到有发送手机短信抽奖的活动,一般中奖的用户的手机号会在电视上公布,但是为了安全和隐私考虑,我们需要对手机号里的某些位进行遮挡,譬如替换成*号请思考,如果我们需要实现这样的功能,可以将一个手机号中间4位替换成*号,请问如何实现?str_replace是否能够满足我们的需求To 139****4567模拟短信投票我们没有必要去弄一个真正的手机短信投票功能,这个需要一些运营商和通信公司的支持,可能还需要一些费用我们可以开发一个表单,表单中添加一个文本框,用户可以在文本框里填写手机号,表单提交后,页面显示出处理过的手机号form?action=mobile.php?method=post? input?type=text?name=mobile?placeholder=请输入手机号?/? input?type=submit?value=发送?/?/formmobile.php在mobile.php中我们需要获取到表单提交的手机号对手机号中间四位进行隐藏输出过滤后的手机号码$mobile?=?$_POST[mobile];strlen要正确替换手机号的中间4位,前提是手机号必须是11位如果用户提交的手机号码的位数不足11位,或者超过11位,应该算作无效的手机号,那么我们需要首先对手机号的位数进行判断使用strlen可以获取字符串的长度int?strlen?(?string?$string?)if?(strlen($mobile)?==?11)?{? //?替换操作}?else?{? echo?位数错误;}思考如果用户在输入完成后多敲了一个空格怎么办?如果用户敲了8个空格和3个数字,那算不算11位的手机号?trim用户提交到PHP的表单数据很有可能是包含了一些无用的字符的,譬如前后多加了空格、换行……因此,通常需要使用trim来进行处理trim可以去除字符串首尾处的空白字符,并将处理后的字符串返回string?trim?(?string?$str?[,?string?$charlist?= \t\n\r\0\x0B?] )trim可以处理掉的空白字符包括:空格、\t制表符tab、\n换行符、\r回车符、\0空字符等,如果需要额外处理其他的字符,可以在第二个参数里添加,譬如 trim($str, ‘#^’)可以处理

文档评论(0)

整理王 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档