Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15095
  • 博文数量: 6
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 125
  • 用 户 组: 普通用户
  • 注册时间: 2013-04-07 11:32
文章分类

全部博文(6)

文章存档

2013年(6)

我的朋友

分类: PHP

2013-04-19 16:31:00

在学习编程的过程中,我觉得不止要获得课本的知识,更多的是解决问题的方法,面对新问题该怎么解决,这样我们才能走在最前方,我是达内的学员,感谢你对本博客的支持;
  在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

  关于补零的这两种方法大家可以挑选着使用,其实各有优劣,sprintf能够保证你不至于误操作吧1补成1000000哈哈,str_pad可以保证你想补啥补啥。
知识就是力量,别人学用知识来赚钱的成本低,在达内学习到编程是铸造梦想的地方,如果你喜欢编程,这里,有我们共同语言,共同的故事,共同的梦想!
(责任编辑:)
阅读(658) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~