专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »PHP教程 » sprintf函数:PHP中的sprintf()函数的学习研究笔记 »正文

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

来源: 发布时间:星期二, 2008年12月30日 浏览:35次 评论:0
sprf

将字串格式化

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

传回值: 字串

函式种类: 资料处理

内容介绍说明

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

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

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

3. 栏位宽度为最小宽度

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

型态见下表

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
转换
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
% 印出百分比符号不转换
b 整数转成 2进位
c 整数转成对应 ASCII 字元
d 整数转成十进位
f 倍精确度数字转成浮点数
o 整数转成 8进位
s 整数转成字串
x 整数转成小写十 6进位
X 整数转成大写十 6进位
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


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

例子

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

使用范例

<?
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// 此时变数 $money 值为 "123.1";
$formatted = sprf ("%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 = sprf ("%-02.2f", $money);
echo $formatted;
?>

这时候,$formatted 将不会再是 01.40 而是 1.400


0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: