位置: 编程技术 - 正文

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

  • 一般纳税人增值税申报操作流程
  • 城镇土地使用税暂行条例
  • 税金及附加属于管理费用吗
  • 9月份扣什么税?
  • 研发人员的社保也要进入研发费用吗
  • 年初建账考虑要点有哪些
  • 银行端查询缴税凭证怎么盖章
  • 购进货物建不动产进项税额抵扣
  • 流动资产短期借款
  • 奖品偶然所得个税如何申报
  • 自产自用增值税组成计税价格
  • 对方电子承兑发出多长时间可以到账
  • 一般纳税人当月只有进项没有销项怎么做账
  • 固定资产销售税务处理
  • 工商年检的社保基数怎么填
  • 一般户可以收货款么
  • 2019小规模纳税人增值税起征点
  • 延期申报的程序
  • 收入不交税怎么处理
  • 印花税的计税依据是销项和进项的金额
  • 未计提的上一年企业所得税
  • 购买产品优惠计入什么科目
  • 远期结汇账务处理办法
  • 无销售发票的基本户收入?
  • php用img显示图片
  • 华为心率血压智能手表怎么样
  • 企业投资收益要交印花税吗
  • 海关发票丢失怎么处理
  • PHP如何使用资源路由方式改进新闻管理
  • audit.exe
  • 管理费用税金怎么算
  • 固定资产改造更新
  • 货币资金有余额怎样填写清税申报表
  • 客户对账单应该哪个部门做
  • python中字符串转数字函数
  • 合作卖东西怎么分成
  • 一般纳税人和小规模纳税人怎么界定
  • 什么情况需要预缴
  • 员工实际工资
  • 补发工资如何做账
  • 汇兑损益的种类
  • 营改增后小规模都是三个点吗
  • 个人出租商铺如何报税申报,需要什么资料
  • 增值税可以减免吗
  • 购买土地缴纳契税会计分录
  • 利润分配未分配利润是净利润吗
  • 企业招待客户收入怎么算
  • 企业分期收款销售商品,即商品已经交付
  • 应付账款的主要成本包括
  • 分销佣金账务处理流程
  • 固定资产转换为投资性房地产转换日
  • 一般纳税人购买原材料会计分录
  • 企业对于发出的货物
  • sql server创建架构
  • UBUNTU怎么安装MPEG-4解码器
  • mac系统小技巧
  • 安装solaris11
  • 三星笔记本预装win8改win7好吗
  • 苹果macbook air上怎么装红色警戒
  • windows打补丁后无法启动
  • win7怎么打开u盘里的的另一个U盘
  • javascript date函数
  • 列举javascript中的所有数据类型
  • css 3
  • unity 扩展编辑器
  • Unity3d AssetDatabase.SetLabels StartAssetEditing ValidateMoveAsset 语法复习
  • node+express+ejs制作简单页面上手指南
  • textview在哪
  • 特征提取技术
  • jquery教程chm
  • javascript的
  • 深入理解两个大计重要论断心得体会
  • 用python简单代码
  • 高性能javascript的内容简介
  • 朵朵舞百科
  • js遍历foreach
  • python网络编程从入门到精通
  • 内蒙古物业费收取标准2020
  • 发票被暂停了严重吗
  • 所得税汇算清缴退税税务局要来查账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设