PHP实现数字补零功能的2个函数介绍


Posted in PHP onMay 12, 2014

在PHP中至少有两个函数能够帮助我们快速实现数字补零:
首先是PHP str_pad函数:

#str_pad — 使用另一个字符串填充字符串为指定长度

顾名思义这个函数是针对字符串,对指定的字符串填补任何其它的字符串
str_pad参数说明:
string str_pad ( string $input , int $pad_length [, string $pad_string = " " [, int $pad_type = STR_PAD_RIGHT ]] )
#常用参数说明:str_pad(带填补的字符串,填补后的长度,填补字符串,填补位置)

其中填补后的长度必须是个正整数,填补位置有三个选项,
左边:STR_PAD_LEFT
右边:STR_PAD_RIGHT
两端:STR_PAD_BOTH
实例展示:
echo str_pad(1,8,"0",STR_PAD_LEFT);
#结果:00000001
echo str_pad(1,8,"0",STR_PAD_RIGHT);
#结果:10000000
echo str_pad(1,8,"0",STR_PAD_BOTH);
#结果:00010000

在上边的例子中值得注意的一个细节是,如果填补的位数是个奇数,例如例三中填补了7个0,右边优先。

下面再看下补零的另外一种方法:
PHP sprintf函数:

#sprintf — 返回一个格式化字符串

这个函数用起来比较灵活,有待学者们深挖,这里主要讲实现数值左边补零(或者在小数点后补零)的处理方式;
先看左边补零
echo sprintf("%05d",1);
# %05d的意思:用一个5位数的数字格式化后边的参数,如果不足5位就补零
# 运行结果是00001

再看小数点后补零
echo sprintf("%01.3f",1);
# %01.3f的意思:用一个小数点后最少三位不足三位补零,小数点前最少一位,不足一位补零的浮点数格式化后边的参数
# 运行结果是:1.000

另外还可以自己编写一个自定义函数进行处理;
编写代码各有所优也有所劣,大家可以任选适合的;

注:sprintf能够保证不至于误操作把1补成1000000,str_pad可以保证想补啥补啥。

PHP 相关文章推荐
使用 eAccelerator加速PHP代码的目的
Mar 16 PHP
PHP学习笔记 用户注册模块用户类以及验证码类
Sep 20 PHP
PHP系列学习之日期函数使用介绍
Aug 18 PHP
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
Sep 28 PHP
Destoon模板制作简明教程
Jun 20 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
Oct 14 PHP
php实现redis数据库指定库号迁移的方法
Jan 14 PHP
浅谈COOKIE和SESSION区别
Jul 19 PHP
php7 安装yar 生成docker镜像
May 09 PHP
Laravel中获取路由参数Route Parameters的五种方法示例
Sep 29 PHP
php实现QQ小程序发送模板消息功能
Sep 18 PHP
php实现根据身份证获取精准年龄
Feb 26 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
May 12 #PHP
phpMyAdmin自动登录和取消自动登录的配置方法
May 12 #PHP
PHP.ini中配置屏蔽错误信息显示和保存错误日志的例子
May 12 #PHP
你可能不知道PHP get_meta_tags()函数
May 12 #PHP
PHP函数getenv简介和使用实例
May 12 #PHP
PHP写的资源下载防盗链类分享
May 12 #PHP
php结合ajax实现赞、顶、踩功能实例
May 12 #PHP
You might like
调频问题解答
2021/03/01 无线电
图书管理程序(二)
2006/10/09 PHP
PHP Switch 语句之学习笔记
2013/09/21 PHP
mysql_connect localhost和127.0.0.1的区别(网络层阐述)
2015/03/26 PHP
PHP滚动日志的代码实现
2015/06/10 PHP
分享ThinkPHP3.2中关联查询解决思路
2015/09/20 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
2017/08/01 PHP
Docker搭建自己的PHP开发环境
2018/02/24 PHP
PHP设计模式之模板方法模式实例浅析
2018/12/20 PHP
ajax异步刷新实现更新数据库
2012/12/03 Javascript
js交换排序 冒泡排序算法(Javascript版)
2014/10/04 Javascript
Angular 4依赖注入学习教程之组件服务注入(二)
2017/06/04 Javascript
详解webpack-dev-server 设置反向代理解决跨域问题
2018/04/18 Javascript
Vue隐藏显示、只读实例代码
2018/07/18 Javascript
vue-for循环嵌套操作示例
2019/01/28 Javascript
vue-cli3.X快速创建项目的方法步骤
2019/11/14 Javascript
python使用paramiko实现远程拷贝文件的方法
2016/04/18 Python
Python入门教程之运算符与控制流
2016/08/17 Python
对python 生成拼接xml报文的示例详解
2018/12/28 Python
Pycharm新建模板默认添加个人信息的实例
2019/07/15 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
2019/07/26 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
python自动化测试无法启动谷歌浏览器问题
2019/10/10 Python
Artist Guitars新西兰:乐器在线商店
2017/09/17 全球购物
Bally美国官网:经典瑞士鞋履、手袋及配饰奢侈品牌
2018/05/18 全球购物
学校七一活动方案
2014/01/19 职场文书
学前班评语大全
2014/05/04 职场文书
公共场所禁烟标语
2014/06/25 职场文书
大学生见习报告总结
2014/11/04 职场文书
先进人物事迹材料
2014/12/29 职场文书
资料员岗位职责
2015/02/10 职场文书
超市员工辞职信范文
2015/05/12 职场文书
借款民事起诉状范文
2015/05/19 职场文书
《狼牙山五壮士》读后感:宁死不屈,视死如归
2019/08/16 职场文书
导游词之永济鹳雀楼
2020/01/16 职场文书
分析MySQL优化 index merge 后引起的死锁
2022/04/19 MySQL