[PHP学习教程]007.数字补0(Num padding)

引言:在日常工作中,经常要用到数字前后补0的操作,如:日期格式yyyy-MM-dd等等。

在php中有多种前后填充函数——今天,我们就介绍常用的两种,实现数字补零:

  • str_pad
  • sprintf

大家请直接看教程!

填充函数-str_pad



顾名思义,这个函数是针对字符串来说的这个可以对指定的字符串填补任何其它的字符串

语法:str_pad(带填补的字符串,填补后的长度,填补字符串,填补位置)

参数解析:

  填补后的长度-必须是个正整数

  填补位置-有三个选项:

    左边:STR_PAD_LEFT

    右边:STR_PAD_RIGHT

    两端:STR_PAD_BOTH

示例1:

echo str_pad(1,8, "0", STR_PAD_LEFT);

运行结果1:

00000001

示例2:

echo str_pad(1,8, "0", STR_PAD_RIGHT);

运行结果2:

10000000

示例3:

echo str_pad(1,8, "0", STR_PAD_BOTH);

运行结果3:

00010000

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

填充函数-sprintf



1.Decimal supplement 0+[小数点后补0]

直接上代码:

echo sprintf("%01.3f", 1);

%01.3f的意思是说:用一个小数点后最少三位不足三位补零,小数点前最少一位,不足一位补零的浮点数格式化后边的参数

运行结果1:

1.000

结束语



关于补零的这几种方法大家可以挑选着使用,其实各有优劣,sprintf能够保证你不至于误操作吧1补成1000000哈哈,str_pad可以保证你想补啥补啥。

未完,待更新...

本站文章为宝宝巴士 SD.Team原创,转载务必在明显处注明:(作者官方网站:宝宝巴士
转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4817667.html

时间: 2024-10-17 05:13:47

[PHP学习教程]007.数字补0(Num padding)的相关文章

spring4.0.6最新稳定版新特性学习,简单学习教程(一)

Spring Framework 4.0 学习整理. Spring框架的核心部分就是Ioc容器,而Ioc控制的就是各种Bean,一个Spring项目的水平往往从其XML配置文件内容就能略知一二,很多项目,往往是外包公司的项目,配置文件往往是乱七八糟,抱着能跑就行,不报错就行的态度去写,然后在项目中后期发现各种缺失又去一通乱补,其结果就是,整个文档可读性极差,毫无章法.这也不能怪写这个XML的人,拿着苦逼程序员的工资干着架构师的工作必然是这个结果.为了程序员的幸福,我认为有必要来一套简单快速的官方

在js中做数字字符串补0

转自(http://blog.csdn.net/aimingoo/article/details/4492592) 通常遇到的一个问题是日期的“1976-02-03 HH:mm:ss”这种格式 ,我的比较简单的处理方法是这样: [javascript] view plaincopy function formatDate(d) { var D=['00','01','02','03','04','05','06','07','08','09'] with (d || new Date) retu

java 保留字符串数字的位数,不够前面补0

@Test public void test() { this.printToConsole(autoGenericCode("10011")); this.printToConsole(autoGenericCode("000",3)); } /** * 不够位数的在前面补0,保留code的长度位数字 * @param code * @return */ private String autoGenericCode(String code) { String re

JavaScript实现数字前补“0”的五种方法示例

众所周知JavaScript中的数字是没有前置0的,因此需要我们自己进行操作来添加前置0,而且还得转换成字符串. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 <!DOCTYPE html PUBLI

批处理命令如何输出保持三位的数字,不足补0

做测试用到数字需要补0,用windows很头疼.最后终于找到了一种方法. 其实只要一句话:Set "Num=000%a%"&Set "Num=!Num:~-3!" 实例如下: @Echo Off&SetLocal EnableDelayedExpansion set a=2 Set "Num=000%a%"&Set "Num=!Num:~-3!" echo %Num% echo %a% pause 原文

php在数字前面补0得到固定长度数字的两种方法

比较基础,其实两个内置函数都能实现. 1  sprintf 语法: string sprintf(string format, mixed [args]...); 返回值: 字符串 函数种类: 资料处理 本函数用来将字符串格式化.参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止.而在转换的格式间依序包括了 填空字符.0 的话表示空格填 0:空格是默认值,表示空格就放着. 对齐方式.默认值为向右对齐,负号表向左对齐. 字段宽度.为最小宽度. 精确度.指在小数点后的浮点数位数.

关于用sql语句实现一串数字位数不足在左侧补0的技巧

在日常使用sql做查询插入操作时,我们通常会用到用sql查询一串编号,这串编号由数字组成.为了统一美观,我们记录编号时,统一指定位数,不足的位数我们在其左侧补0.如编号66,我们指定位数为5,则保存数据应为00066.这样的操作在sql中应当怎样实现呢? 首先给出查询语句:RIGHT('0000'+CAST( '123'  AS nvarchar(50)),4) 语句解释:公式 RIGHT('位数'+CAST(要判断的字段 AS nvarchar(50)),位数 ) PS:以上查询语句是放在se

Java数字格式化输出时前面补0

/** * 里数字转字符串前面自动补0的实现. * */ public class TestStringFormat { public static void main(String[] args) { int youNumber = 1; // 0 代表前面补充0 // 4 代表长度为4 // d 代表参数为正数型 String str = String.format("%04d", youNumber); System.out.println(str); // 0001 } }

java 数字补齐0

String str_f = str.substring(0, 1); int i = (Integer.parseInt(str.substring(1)) + 1); // 数字补齐0 DecimalFormat df = new DecimalFormat("0000"); String str_b = df.format(i); String factory_id = str_f + str_b; System.out.println(factory_id);