php实现数字补零的方法总结
在php中有两个函数——至少有两个是否有其他的我还不知道,能够实现数字补零,str_pad(),sprintf()详细如下
str_pad
顾名思义这个函数是针对字符串来说的这个可以对指定的字符串填补任何其它的字符串
例如: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,右边优先。
再看补零的另外一种方法sprintf
这个函数学过c的都十分了解它,呵呵……
不过咱不说这么多,因为用起来实在太灵活了,以至于我基本不会用,不过在左边补零(或者在小数点后补零)用起来还是很方便的
先看左边补零
echo sprintf(”%05d”,1);
先说%05d的意思,用一个5位数的数字格式化后边的参数,如果不足5位就补零
运行结果是00005
再看小数点后补零
echo sprintf(”%01.3f”,1);
%01.3f的意思是说,用一个小数点后最少三位不足三位补零,小数点前最少一位,不足一位补零的浮点数格式化后边的参数
其运行结果是:1.000
时间: 2018-09-12
在PHP中至少有两个函数能够帮助我们快速实现数字补零:首先是PHP str_pad函数: 复制代码 代码如下: #str_pad - 使用另一个字符串填充字符串为指定长度 顾名思义这个函数是针对字符串,对指定的字符串填补任何其它的字符串str_pad参数说明: 复制代码 代码如下: string str_pad ( string $input , int $pad_length [, string $pad_string = " " [, int $pad_type = STR_PAD
微信小程序中 "倒计时自动补零" 的一点代码,方法比较简单粗暴,想着以后怎么也能用到,就先总结出来了. 代码: js: //index.js var num = 10//计时 var strH = '' var strM = '' var strS = '' var timer = '' Page({ data: { timeText:''//展示 }, onLoad: function () { this.move() //计时开始 后面的1000是毫秒 每1000毫秒跳一次 tim
通常遇到的一个问题是日期的"1976-02-03 HH:mm:ss"这种格式 ,我的比较简单的处理方法是这样: function formatDate(d) { var D=['00','01','02','03','04','05','06','07','08','09'] with (d || new Date) return [ [getFullYear(), D[getMonth()+1]||getMonth()+1, D[getDate()]||getDate()].join
本文实例讲述了JavaScript实现按照指定长度为数字前面补零输出的方法.分享给大家供大家参考.具体分析如下: 例如我们希望输出的数字长度是固定的,假设为10,如果数字为123,则输出0000000123,不够位数就在之前补足0,这里提供了三种不同的方式实现JS代码给数字补0 的操作 方法1 function PrefixInteger(num, length) { return (num/Math.pow(10,length)).toFixed(length).substr(2); } 方法
本章节介绍一下如何实现对数字保留两位小数效果,如果数字的原本小数位数不到两位,那么缺少的就自动补零,这个也是为了统一的效果,先看代码实例: function returnFloat(value){ var value=Math.round(parseFloat(value)*100)/100; var xsd=value.toString().split("."); if(xsd.length==1){ value=value.toString()+".00"; r
因为做新闻爬虫,url里面0-9的日期要左侧加零.经过查询之后得到了两种方法. 一.先设一个足够大的数,比如1000000,然后加上当前的数字比如9,得到1000009,然后转化为字符串获取第6.7位即可.下面以1000为例. k=1000 #k是用来获取01 02 03 字符串的 1001 截取第三四位 即可 for i in range(1,31): strtime=i+k time=str(strtime)[2:4] print(len(time)) 二.先获取当前字符串长度,然后用预期长
本文实例讲述了C#基于纯数学方法递归实现货币数字转换中文功能.分享给大家供大家参考,具体如下: 最近由于项目的原因,需要写一个货币数字转换中文的算法,先在网了找了一下,结果发现无一列外都是用(Replace)替换的方式来实现的,所以想写个另外的算法:因为本人是学数学出身的,所以用纯数学的方法实现. 注意:本文中的算法支持小于1023 (也就是9999亿兆)货币数字转化. 货币中文说明: 在说明代码之前,首先让我们回顾一下货币的读法. 10020002.23 读为 壹仟零贰万零贰元贰角叁分 10
在输出整数时如果需要在前面或者后面补零成一定长度可以用以下函数. function padLeft(str,lenght){ if(str.length >= lenght) return str; else return padLeft("0" +str,lenght); } function padRight(str,lenght){ if(str.length >= lenght) return str; else return padRight(str+"
实现一: 复制代码 代码如下: /* 平淡无奇法 */ function pad(num, n) { var i = (num + "").length; while(i++ < n) num = "0" + num; return num; } 上面的代码太平淡无奇,体现不了我的真实水平.于是有了实现二: 复制代码 代码如下: /* 神奇递归法 */ function pad2(num, n) { if ((num + "").lengt