27.字符串替换PHP必威体育精装版版.pptx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
27.字符串替换PHP课件必威体育精装版版课案

字符串替换 替换字符 有时候我们的网站发布评论的时候需要进行一些内容的过滤,一些脏话、敏感词、特殊词语都需要被屏蔽替换成*号或者x mixed str_replace ( mixed $search , mixed $replace , mixed $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=发送 /  /form mobile.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, ‘#^’)可以处理掉字符串首尾的#、或者^符号 trim 大家可以尝试在表单的手机号前后添加空格,看看使用trim是否可以过滤 另外还有两个函数:ltrim和rtrim,分别可以单独清除首或者尾的空字符 $mobile = trim($_POST[mobile]); substr 如果手机号如何能获取到中间的四位究竟是多少? 我们使用s

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档