实例
把百分号(%)符号替换成一个作为参数进行传递的变量:
<?php
$number = 1;
$str = "runoops";
$txt = sprintf("%s 每天有 %u 万人在访问!", $str, $number);
echo $txt;
?>
结果:
runoops 每天有 1 万人在访问!
定义和用法
sprintf() 函数把格式化的字符串写入一个变量中。
arg1、arg2、++ 参数将被插入到主字符串中的百分号(%)符号处。该函数是逐步执行的。在第一个 % 符号处,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。
注释:如果 % 符号多于 arg 参数,则您必须使用占位符。占位符被插入到 % 符号之后,由数字和 "\$" 组成。请参见实例 2。
提示:相关函数:sprintf()、 printf()、 vsprintf()、 fprintf() 和 vfprintf())
语法
sprintf ( string $format
[, mixed$...
] ) : string
参数 | 描述 |
---|---|
format | 必需。规定字符串以及如何格式化其中的变量。 可能的格式值:
附加的格式值。必需放置在 % 和字母之间(例如 %.2f):
注释:如果使用多个上述的格式值,它们必须按照上面的顺序进行使用,不能打乱。 |
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("带两位小数:%1\$.2f
<br>不带小数:%1\$u",$number);
echo $txt;
?>
结果:
带有两位小数:123.00
不带小数:123