位置: 编程技术 - 正文

利用PHP将部分内容用星号替换(利用php计算1+2+3+...+100)

编辑:rootadmin

推荐整理分享利用PHP将部分内容用星号替换(利用php计算1+2+3+...+100),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:利用php将部分内容删除,php使用中以下哪些函数可以向文件中写入内容,用php写一段代码,实现不使用,用php写一段代码,实现不使用,php怎么运用,利用php将部分内容删除,利用php将部分内容导出,利用php将部分内容删除,内容如对您有帮助,希望把文章链接给更多的朋友!

在最近的项目中,会碰到到某人的手机号码隐藏中间几位,身份证号码只显示末尾4位的需求。当时一开始是网上搜索了一下,看到有人是用substr_replace这个函数来替换的,后面我也用了这个函数,但在用的时候不是很好用。

一、substr_replace先来看看这个函数的语法:

参数 描述 string 必需。规定要检查的字符串。 replacement 必需。规定要插入的字符串。 start

必需。规定在字符串的何处开始替换。

 正数 - 在第 start 个偏移量开始替换

 负数 - 在从字符串结尾的第 start 个偏移量开始替换

 0 - 在字符串中的第一个字符处开始替换

charlist

可选。规定要替换多少个字符。

  正数 - 被替换的字符串长度

  负数 - 从字符串末端开始的被替换字符数

  0 - 插入而非替换

1、当start与charlist都为正数的时候,非常好理解,也很符号人的逻辑,start是从0开始的,如下图,根据条件,绿色的将是要被替换的元素

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_d3fede6e3.png" alt="查看图片" />

2、当start为负数,charlist为正数的时候,也挺好理解的

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_d3fedc4.png" alt="查看图片" />

3、当start为正数,charlist为负数的时候,这个我一开始理解错了

利用PHP将部分内容用星号替换(利用php计算1+2+3+...+100)

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_d3fedaf.png" alt="查看图片" />

4、当start为负数,charlist为负数的时候,有一个地方需要注意的就是:如果 start 是负数且 length 小于等于 start,则 length 为 0。这个坑挺容易踩到的

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_d3fed8be.png" alt="查看图片" />

5、charlist为0的时候,就变成插入了,而不是替换,额。。。

用下来,我是感觉不是很顺手,虽然说满足我现在的需求还是可以的,但是如果将来需要一些扩展的话,耍起来挺吃力的,所以就想到自己构造一个,将来用起来也方便。

二、自制的星号替换函数

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_d3fed.png" alt="查看图片" />

前面的两个参数与上面的一样,最后的参数与上面不同

1、当start与length都为正数,与substr_replace表现的一样

2、当start为负数,length为正数,与substr_replace表现的一样

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_d3fedc.png" alt="查看图片" />

三、源码分享

不擅长算法,这里就用很普通的逻辑来展示啦,没有用到啥数学公式。

1、if($start >= 0)这里做start大于等于0与小于0的分支

2、在start 的分之中,分别再做length 大于0,小于0和等于0的三个分支

3、最后计算出start、count和要替换的星号字符串,最后计算出的start与count都是正数,运用substr_replace做替换

四、单元测试

标签: 利用php计算1+2+3+...+100

本文链接地址:https://www.jiuchutong.com/biancheng/284464.html 转载请保留说明!

上一篇:两种php给图片加水印的实现代码(php图片叠加)

下一篇:php数字运算验证码的实现代码(php制作数字验证码)

  • 加工费怎么做账
  • 预缴所得税年底怎么结转
  • 一般纳税人必须开13个点吗
  • 开发支出在资产负债表是怎
  • 工会经费计税
  • 可以先注销银行账户吗
  • 公司承担的社保可以税前扣除吗
  • 专票红冲账务处理
  • 营改增之前房产税计税依据
  • 一般纳税人税控盘维护费会计分录
  • 作废章盖在哪个位置
  • 递延所得税企业合并
  • 已交税金是什么科目
  • 未缴少缴税款追征期
  • 法院收到诉讼费多久可以收到传票
  • 企业收到财政资金
  • win10 20h1 bug
  • 金融服务的手续费要交税吗
  • 主板清除bios
  • 简单了解php编程软件
  • 计提工资时怎么做账
  • php密码加密和解密
  • 报销各种费用怎么做分录
  • 房屋租赁进项税
  • 建筑企业如何确认所得税收入
  • php缩放图片
  • 社保缴纳基数相差多少
  • 贷记卡怎么还利息
  • 调整多计提企业利润
  • 预提费用的核算有哪些
  • 长期股权投资成本法收回投资
  • 售后回租融资租赁案例
  • 车间的办公费计入
  • 纳税人数字签名怎么填
  • vue 浮动窗口
  • php输出表格css
  • springboot项目结构讲解
  • 机器学习:基于朴素贝叶斯对花瓣花萼的宽度和长度分类预测
  • yolov5 output
  • 建设工程施工合
  • 房地产企业税负低如何向税务局解释
  • 小型微利企业符合条件的有
  • 公益性怎么解释
  • 上一年的成本没入账怎么做
  • 银行对账单可以作为原始凭证入账吗
  • 企业所得税是指哪些
  • 购进免税农产品发生非正常损失
  • 去税务局流程
  • 生产过程中的不良品怎么处理
  • 从政府取得土地使用权缴增值税吗
  • 水利工程施工税率是多少
  • 农产品如何进入批发市场
  • 如何判断会计政策变更
  • 定额发票累计领取怎么算
  • mysql外键怎么写
  • ubuntu 16.04.6安装教程
  • 步步简笔画
  • windows 8.1 build 9600
  • 电脑系统怎么设置字体大小
  • win7系统强制关机
  • win10如何在桌面设置出我的电脑
  • 电脑显示无windows
  • Win10双显卡怎么切换到独立显卡
  • win7电脑没有显示无线网络
  • 利用百度地图画cad图
  • nodejs实现文件压缩下载
  • [置顶]津鱼.我爱你
  • AngularJs ng-change事件/指令的用法小结
  • 详谈左晖
  • 数据库的基本操作实验报告
  • python颜色表
  • jquery遍历json对象
  • 地方税务局怎么报税
  • 增值税发票综合服务平台升级
  • 青岛崂山区税务局官网
  • 所得税调增调减搞不清
  • 公务卡信用等级1级
  • 个人所得税没申报会退吗
  • 公司租房的房产税应计入哪个科目
  • 电子发票查询平台打印
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设