| 導購 | 订阅 | 在线投稿
分享
 
 
 

PHP中的sprintf()函数的学习研究笔记

2008-12-22 08:09:03  編輯來源:互聯網  简体版  手機版  評論  字體: ||
 
 
  sprintf

  将字串格式化。

  语法: string sprintf(string format, mixed [args]...);

  传回值: 字串

  函式种类: 资料处理

  内容说明

  本函式用来将字串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了

  1. 填空字元。0 的话表示空格填 0;空格是内定值,表示空格就放着。

  2. 对齐方式。内定值为向右对齐,负号表向左对齐。

  3. 栏位宽度。为最小宽度。

  4. 精确度。指在小数点后的浮点数位数。

  型态,见下表

  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

  转换字符

  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

  % 印出百分比符号,不转换。

  b 整数转成二进位。

  c 整数转成对应的 ASCII 字元。

  d 整数转成十进位。

  f 倍精确度数字转成浮点数。

  o 整数转成八进位。

  s 整数转成字串。

  x 整数转成小写十六进位。

  X 整数转成大写十六进位。

  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

  例子

  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

  使用范例

  <?

  $money1 = 68.75;

  $money2 = 54.35;

  $money = $money1 + $money2;

  // 此时变数 $money 值为 "123.1";

  $formatted = sprintf ("%01.2f", $money);

  // 此时变数 $ formatted 值为 "123.10"

  ?>

  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

  这个 %01.2f 是什么意思呢?

  首先 这个 % 符号是开始的意思,他写在最前面表示指定格式要开始了。 也就是 "起始字符", 直到出现 "转换字符" 为止,就算格式终止。

  然后 跟在 % 符号 后面的是 0 这个零是 "填空字元" 表示,如果位置空着 就用0来填满。

  在 0 后面的是 1 这个 1 是规定,小数点前面的数字占位要有1位以上。

  如果把 1 改成 2 如果 $money 的值为 1.23 ,则 $formatted 的值将为 01.23

  因为,在小数点前面的数字只占了1位,按照上面所规定的格式,小数点前数字应该占2位,现在只有1位,所以,用0来填满。

  到目前,在 %01 后面的 .2 (点2) 就很好理解了,它的意思是,规定,小数点后的数字,必需占2位. 如果这时候,$money 的值为 1.234,则 $formatted 的值将为 1.23。

  为什么 4 不见了呢? 因为,在小数点后面 按照上面的规定,必需且仅能占2位。 可是 $money 的值中,小数点占了3位,所以,4 被去掉了,只剩下 23。

  最后,以 f "转换字符" 结尾,其他转换字符请自行参考上面的转换字符列表。

  关于对齐

  如果在 % 起始符号后面 加上 - (负号) 则,将会把数字以向右对齐的方式进行处理。

  列子

  <?

  $money = 1.4;

  $formatted = sprintf ("%-02.2f", $money);

  echo $formatted;

  ?>

  这时候,$formatted 将不会再是 01.40 而是 1.400
 
 
 
sprintf 将字串格式化。 语法: string sprintf(string format, mixed [args]...); 传回值: 字串 函式种类: 资料处理 内容说明 本函式用来将字串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了 1. 填空字元。0 的话表示空格填 0;空格是内定值,表示空格就放着。 2. 对齐方式。内定值为向右对齐,负号表向左对齐。 3. 栏位宽度。为最小宽度。 4. 精确度。指在小数点后的浮点数位数。 型态,见下表 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 转换字符 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=- % 印出百分比符号,不转换。 b 整数转成二进位。 c 整数转成对应的 ASCII 字元。 d 整数转成十进位。 f 倍精确度数字转成浮点数。 o 整数转成八进位。 s 整数转成字串。 x 整数转成小写十六进位。 X 整数转成大写十六进位。 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 例子 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 使用范例 <? $money1 = 68.75; $money2 = 54.35; $money = $money1 + $money2; // 此时变数 $money 值为 "123.1"; $formatted = sprintf ("%01.2f", $money); // 此时变数 $ formatted 值为 "123.10" ?> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 这个 %01.2f 是什么意思呢? 首先 这个 % 符号是开始的意思,他写在最前面表示指定格式要开始了。 也就是 "起始字符", 直到出现 "转换字符" 为止,就算格式终止。 然后 跟在 % 符号 后面的是 0 这个零是 "填空字元" 表示,如果位置空着 就用0来填满。 在 0 后面的是 1 这个 1 是规定,小数点前面的数字占位要有1位以上。 如果把 1 改成 2 如果 $money 的值为 1.23 ,则 $formatted 的值将为 01.23 因为,在小数点前面的数字只占了1位,按照上面所规定的格式,小数点前数字应该占2位,现在只有1位,所以,用0来填满。 到目前,在 %01 后面的 .2 (点2) 就很好理解了,它的意思是,规定,小数点后的数字,必需占2位. 如果这时候,$money 的值为 1.234,则 $formatted 的值将为 1.23。 为什么 4 不见了呢? 因为,在小数点后面 按照上面的规定,必需且仅能占2位。 可是 $money 的值中,小数点占了3位,所以,4 被去掉了,只剩下 23。 最后,以 f "转换字符" 结尾,其他转换字符请自行参考上面的转换字符列表。 关于对齐 如果在 % 起始符号后面 加上 - (负号) 则,将会把数字以向右对齐的方式进行处理。 列子 <? $money = 1.4; $formatted = sprintf ("%-02.2f", $money); echo $formatted; ?> 这时候,$formatted 将不会再是 01.40 而是 1.400
󰈣󰈤
日版宠物情人插曲《Winding Road》歌词

日版宠物情人2017的插曲,很带节奏感,日语的,女生唱的。 最后听见是在第8集的时候女主手割伤了,然后男主用嘴帮她吸了一下,插曲就出来了。 歌手:Def...

兄弟共妻,我成了他们夜里的美食

老钟家的两个儿子很特别,就是跟其他的人不太一样,魔一般的执着。兄弟俩都到了要结婚的年龄了,不管自家老爹怎么磨破嘴皮子,兄弟俩说不娶就不娶,老父母为兄弟两操碎了心...

 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
 
王朝网络微信公众号
微信扫码关注本站公众号 wangchaonetcn
 
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味著赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有