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 相关文章推荐
PHPMyAdmin 快速配置方法
May 11 PHP
php $_SERVER当前完整url的写法
Nov 12 PHP
PHP 一个随机字符串生成代码
May 26 PHP
POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)
Oct 12 PHP
PHP实现单例模式最安全的做法
Jun 13 PHP
个人写的PHP验证码生成类分享
Aug 21 PHP
PHP防止注入攻击实例分析
Nov 03 PHP
php中关于socket的系列函数总结
May 18 PHP
php去除二维数组的重复项方法
Nov 03 PHP
掌握PHP垃圾回收机制详解
Mar 13 PHP
Thinkphp整合阿里云OSS图片上传实例代码
Apr 28 PHP
详细分析PHP 命名空间(namespace)
Jun 30 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
PHP程序员面试 切忌急功近利(更需要注重以后的发展)
2010/09/01 PHP
php判断文件上传类型及过滤不安全数据的方法
2014/12/17 PHP
PHP输出图像imagegif、imagejpeg与imagepng函数用法分析
2016/11/14 PHP
PHP开发实现快递查询功能详解
2019/04/08 PHP
PHP实现微信提现(企业付款到零钱)
2019/08/01 PHP
TP3.2框架分页相关实现方法分析
2020/06/03 PHP
12款经典的白富美型—jquery图片轮播插件—前端开发必备
2013/01/08 Javascript
A标签触发onclick事件而不跳转的多种解决方法
2013/06/27 Javascript
详谈jQuery中的this和$(this)
2014/11/13 Javascript
JS中创建函数的三种方式及区别
2016/03/13 Javascript
基于BootStrap Metronic开发框架经验小结【七】数据的导入、导出及附件的查看处理
2016/05/12 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
IntersectionObserver实现图片懒加载的示例
2017/09/29 Javascript
详解webpack多页面配置记录
2018/01/22 Javascript
vue input输入框模糊查询的示例代码
2018/05/22 Javascript
分享5个小技巧让你写出更好的 JavaScript 条件语句
2018/10/20 Javascript
微信小程序登录按钮遮罩浮层效果的实现方法
2018/12/16 Javascript
微信浏览器下拉黑边解决方案 wScroollFix
2020/01/21 Javascript
JavaScript canvas实现雪花随机动态飘落
2020/02/08 Javascript
Jquery $.map使用方法实例详解
2020/09/01 jQuery
[53:15]Newbee vs Pain 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python中AND、OR的一个使用小技巧
2015/02/18 Python
python实现数组插入新元素的方法
2015/05/22 Python
在Python的Django框架中编写编译函数
2015/07/20 Python
Django数据库操作的实例(增删改查)
2017/09/04 Python
python多行字符串拼接使用小括号的方法
2020/03/19 Python
Python实现矩阵相乘的三种方法小结
2018/07/26 Python
手把手教你安装Windows版本的Tensorflow
2020/03/26 Python
pycharm实现print输出保存到txt文件
2020/06/01 Python
解决python 执行shell命令无法获取返回值的问题
2020/12/05 Python
父亲的菜园教学反思
2014/02/13 职场文书
小学节能减排倡议书
2014/05/15 职场文书
贷款委托书
2014/08/01 职场文书
委托公证书样本
2015/01/23 职场文书
Javascript 解构赋值详情
2021/11/17 Javascript
Ubuntu安装Mysql+启用远程连接的完整过程
2022/06/21 Servers