位置: 编程技术 - 正文

利用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制作数字验证码)

  • 什么是库存现金的盘亏
  • 外商投资的企业是民营企业吗
  • 采购返利怎么生成发票
  • 摄影服务的开票项目
  • 生产型企业出口退税计算公式
  • 4s店代办保险回扣
  • 收不回的款项怎么处理
  • 企业所得税包含哪些税种
  • 营业外支出罚款所得税怎么处理
  • 代缴水电费如何做账
  • 软件企业两免三减半备案条件
  • 现金支出的一般程序
  • 固定资产的建造成本包括
  • 消防设施安装费包括哪些
  • 银行属于个人吗
  • 出售房产税收
  • 卷式增值税发票校验码怎么查
  • 税报错了可以更改吗
  • 核定征收金额如何确定
  • 收汇结汇的账务处理
  • 代收款项属于收入范围吗
  • 房地产企业闲置土地怎么处理
  • 哪些项目可以在城镇开发边界外
  • 费用转入本年利润的哪一方
  • macos的复制粘贴快捷键
  • 桌面鼠标右键菜单设置
  • thinkphp save
  • 固定资产投资账务处理
  • 金融业贷款损失多少
  • 进项税额不得抵扣的情况有哪些
  • 回迁房办理房产证契税怎么交
  • yii2框架中文手册
  • 宝宝不肯坐推车怎么办
  • php增删改查mysqli实例
  • yolov5 output
  • 数据库arc文件
  • tsar命令 收集服务器系统信息
  • 利息支出税前扣除时间
  • 工商年报资产状况纳税总额怎么填
  • facebook/scribe · GitHub
  • 库存现金怎么算
  • mysql5.6设置密码
  • 固定资产减值损失影响营业利润吗
  • 普通发票和增值税发票报销有什么区别?
  • 契税退税政策怎么操作
  • 房产租赁发票
  • 红字冲销表示负数吗
  • 调整账户有哪几类
  • 发票缴销后还要保存吗
  • 企业职工薪酬如何确定
  • 错开发票所需要提供的资料以及时效要求是?
  • 弥补上年亏损所需的资金
  • 红字冲销有没有时间限制
  • 哪些税费计入税金及附加科目
  • SQL 导入导出Excel数据的语句
  • 低配置装什么系统
  • win7怎么打开后缀
  • linux vim 查找替换
  • win8怎样获取管理员权限
  • tomcat配置虚拟主机
  • ghost备份1678
  • win7计划任务设置
  • win7怎么调图片大小
  • win10预览设置
  • android RecycleView 面试
  • linux rpm -i
  • javascript延迟执行
  • 简述图像批处理的操作过程
  • js中的隐式类型转换
  • shell脚本clear
  • python语言面向过程吗
  • Python线程进程协程
  • Windows下python2.7.8安装图文教程
  • jquery根据name
  • First Class: UI of Android
  • 深圳个人税收完税证明网上打印
  • 领导对税收分析肯定性批示
  • 地税局属于市直单位吗
  • 中药生产与加工和中药制药技术区别
  • 消费税记不记入成本
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设