PHP中 sprintf()格式化输出详解
来源:互联网 发布:东华软件薛向东 编辑:程序博客网 时间:2024/05/17 04:20
一、定义和用法
sprintf()函数把格式化的字符串写入变量中。
arg1、arg2、++参数将被插入到主字符串中的百分号(%)符号处。该函数是逐步执行的。在第一个%符号处,插入arg1,在第二个%符号处,插入arg2,以此类推。
注释:如果%符号多于arg参数,则您必须使用占位符。占位符位于%符号之后,由数字和“\$”组成。
实例:
<?php$number = 2;$str = "Shanghai";$txt = sprintf("There are %u million cars in %s.",$number,$str);echo $txt;?>运行结果为:There are 2 million cars in Shanghai.语法
sprintf(format,arg1,arg2,arg++)参数描述format必需。规定字符串以及如何格式化其中的变量。
可能的格式值:
%% 返回一个百分号%
%b 二进制数
%c ASCII值对应的字符
%d 包含正负号的十进制数(负数、0、正数)
%e 使用小写的科学计数法(例如:1.2e+2)
%E 使用大写的科学计数法(例如:1.2E+2)
%u 不包含正负号的十进制数(大于等于0)
%f 浮点数(本地设置)
%F 浮点数(非本地设置)
%g 较短的%e和%f
%G 较短的%E和%f
%O 八进制数
%s 字符串
%x 十六进制数(小写字母)
%X 十六进制数(大写字母)
附加的格式值。必需放置在%和字母 之间(例如%.2f):
+(在数字前面加上+或-来定义数字的正负性。默认情况下,
只有负数才做标记,正数不做标记)
‘(规定使用什么作为填充,默认是空格。它必需与宽度指定器
一起使用。例如:%‘x20s(使用“x作为填充”))
-(左调整变量值)
[0-9](规定变量值的最小宽度)
.[0-9](规定小数位数或最大字符串长度)
注释:如果使用多个上述的格式值,它们必需按照以上的顺序使用。arg1必需。规定插到format字符串中第一个%符号处的参数。arg2可选。规定插到format字符串中第二个%符号处的参数。arg++可选。规定插到format字符串中第三、四等%符号处的参数。
技术细节:返回值:返回已格式化的字符串
二、更多实例
1.使用格式值%f:
<?php
$number = 123;
$txt = sprintf("%f",$number);
echo $txt;
?>
运行结果为:123.000000
2.使用占用符:
<?php
$number = 123;
$txt = sprintf("带两位小数:%\$.2f<br>不带小数:%1\$u",$number);
echo $txt;
?>
运行结果为:带有两位小数:123.00
不带小数:123
3.对所有可能的格式值的演示
<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; //ASCII字符50是2
//注释:格式值“%%”返回百分号
echo sprintf("%%b = %b",$num1)."<br>"; //二进制数 结果:%b = 111010110111100110100010101
echo sprintf("%%c = %c",$char)."<br>"; //ASCII字符 结果:%c = 2
echo sprintf("%%d = %d",$num1)."<br>"; //带符号的十进制数 结果:%d = 123456789
echo sprintf("%%d = %d",$num2)."<br>"; //带符号的十进制数 结果:%d = -123456789
echo sprintf("%%e = %e",$num1)."<br>"; //科学计数法(小写) 结果:%e = 1.234568e+8
echo sprintf("%%E = %E",$num1)."<br>";//科学计数法(大写) 结果:%E = 1.234568E+8
echo sprintf("%%u = %u",$num1)."<br>";//不带符号的十进制数(正) 结果:%u = 123456789
echo sprintf("%%u = %u",$num2)."<br>";//不带符号的十进制数(负) 结果:%u = 4171510507
?>
4.对字符串说明符的演示<?php
$str1 = "Hello";
$str2 = "Hello world";
echo sprintf("[%s]",$str1."<br>");
echo sprintf("[%8s]",$str1."<br>");
echo sprintf("[%-8s]",$str1."<br>");
echo sprintf("[%08s]",$str1."<br>");
echo sprintf("[%'*8s]",$str1."<br>");
echo sprintf("[%8.8s]",$str2."<br>");
?>运行结果为:[Hello][ Hello][Hello ][000Hello][***Hello][Hello wo]此文章转载自:http://www.w3school.com.cn/php/func_string_sprintf.asp
- PHP中 sprintf()格式化输出详解
- php中格式化输出函数vprintf printf sprintf sscanf
- PHP格式化输出printf,sprintf,vprintf,fprintf
- sprintf() 格式化输出函数
- sprintf() 格式化输出函数
- sprintf格式化输出
- sprintf() 格式化输出函数
- sprintf() 格式化输出函数
- sprintf() 格式化输出函数
- 格式化输出(printf,sprintf)
- matlab:用sprintf()格式化输出
- php中sprintf()函数用法详解
- PHP格式化字符串函数 sprintf()
- 【php】如何在sprintf函数中输出百分号(%)等特殊符号
- php sprintf用法详解
- PHP sprintf()函数详解
- C++中替代sprintf的std::ostringstream输出流详解
- C++中替代sprintf的std::ostringstream输出流详解
- mysql函数
- JVM调优:选择合适的GC collector
- 【algorithm】排序算法
- js小技巧
- 这段时间一直在看马士兵老师的视频,收藏这篇关于学习java的文章
- PHP中 sprintf()格式化输出详解
- 《Spring设计思想》AOP设计基本原理
- Django 1.11 json接口编写以及测试
- ReactNative学习第二天
- JS中浏览器兼容性问题
- Android拍照适配方案
- SpringBoot 使用Scheduled 定时任务入门
- 计算机网络的物理层
- 集成Fabric的Crashlytics(崩溃统计)