位置: 编程技术 - 正文

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

  • 文化传媒公司的税种及税率
  • 向税务局申请发票增量增额怎么写
  • 影响年度损益的金额有哪些
  • 其他应付款二级科目明细
  • 房产税简易征收的时间
  • 退税发票误勾选确认
  • 企业如何列支个人收入
  • 电子承兑汇票如何贴现网银操作
  • 小规模纳税人要交印花税吗
  • 个税登记app
  • 设备安装成本如何核算
  • 零余额账户收到钱怎么办
  • 应收账款贷方余额表示什么
  • 投资性房地产收入属于什么收入
  • 企业的车辆购置税计入哪个科目
  • 免税企业以前年收入多少
  • 个体工商户餐饮业税率是多少
  • 应交税费算什么费用
  • 增值税普通发票有什么用
  • 单位统一为员工办的银行卡属于对公账户吗
  • 股票内在价值计算公式中级财务管理
  • 企业的应付账款确实无法支付,经确认后转作
  • 收回购货方前欠货款属于什么
  • 赎回股份是利好还是利空
  • 评估资产没有发票和流水怎么办
  • 为什么win7系统添加语言包
  • 退税需要怎么操作
  • 经营免租期是什么意思
  • 收到退款的会计分录
  • 公司收入没有进项
  • 转出未交增值税和未交增值税区别
  • 预计可变现净值影响账面价值吗
  • 支付劳务公司的劳务费计入应付账款还是其他应付款
  • 企业商誉属于什么资产
  • 资产总额怎么计算公式
  • 提供餐饮服务购入农产品的进项税额抵扣问题
  • 融资租赁首付租金会计账务处理
  • 哪些企业不需要做安评
  • 走工资支付福利怎么算
  • 财务费用的相关认定
  • 开票人是管理员可以报销吗
  • 控股子公司注销母公司账务处理实例
  • 揭秘蟹卡骗局
  • 双软企业的税收优惠政策新政策文件
  • mysql的常用命令
  • 综合所得算税公式
  • 查补以前年度增值税怎么申报
  • 工程的挂靠取得收入怎么做账?
  • 体检入账的原始凭证是
  • 出差期间招待费用怎样报销
  • 设计费可以一次支付吗
  • 协定存款是什么存款
  • 如何审计主营业务收入的真实性问题
  • 小微企业免征增值税优惠
  • 用SQL脚本读取Excel中的sheet数量及名称的方法代码
  • mysql冗余字段
  • 删除了c盘文件
  • auepuc.exe是什么软件
  • win7输入法图标不见了怎么恢复正常
  • 360卫士重装电脑够进入不了桌面
  • win10提示激活windows
  • centos 查看文件夹
  • 电脑及网络维护
  • textview可以点击吗
  • android游戏编程之从零开始
  • cocos2dx 2.2.2
  • Ext JS 4官方文档之三 -- 类体系概述与实践
  • js 入门
  • node.js+captchapng+jsonwebtoken实现登录验证示例
  • python怎样升级
  • android数据存储文件读写实验
  • 去哪儿网客服电话怎么转人工
  • 新办企业税务局注册流程
  • 电子发票怎么看有没有重复报销
  • 电子发票是什么格式的文件
  • 宁波银行税务贷简介
  • 遵从和尊重
  • 发票校验码不清楚
  • 四川税务专管员查询
  • 如何用微信进行社保认证
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设