更多实例
例子 1
使用格式值 %f:
$number = 123;
$txt = sprintf("%f",$number);
echo $txt;
?>
例子 2
使用占位符:
$number = 123;
$txt = sprintf("带两位小数:%1\$.2f
不带小数:%1\$u",$number);
echo $txt;
?>
例子 3
对所有可能的格式值的演示:
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // ASCII 字符 50 是 2
// 注释:格式值 "%%" 返回百分号
echo sprintf("%%b = %b",$num1)."
"; // 二进制数
echo sprintf("%%c = %c",$char)."
"; // ASCII 字符
echo sprintf("%%d = %d",$num1)."
"; // 带符号的十进制数
echo sprintf("%%d = %d",$num2)."
"; // 带符号的十进制数
echo sprintf("%%e = %e",$num1)."
"; // 科学计数法(小写)
echo sprintf("%%E = %E",$num1)."
"; // 科学计数法(大写)
echo sprintf("%%u = %u",$num1)."
"; // 不带符号的十进制数(正)
echo sprintf("%%u = %u",$num2)."
"; // 不带符号的十进制数(负)
echo sprintf("%%f = %f",$num1)."
"; // 浮点数(视本地设置)
echo sprintf("%%F = %F",$num1)."
"; // 浮点数(不视本地设置)
echo sprintf("%%g = %g",$num1)."
"; // 短于 %e 和 %f
echo sprintf("%%G = %G",$num1)."
"; // 短于 %E 和 %f
echo sprintf("%%o = %o",$num1)."
"; // 八进制数
echo sprintf("%%s = %s",$num1)."
"; // 字符串
echo sprintf("%%x = %x",$num1)."
"; // 十六进制数(小写)
echo sprintf("%%X = %X",$num1)."
"; // 十六进制数(大写)
echo sprintf("%%+d = %+d",$num1)."
"; // 符号说明符(正)
echo sprintf("%%+d = %+d",$num2)."
"; // 符号说明符(负)
?>
例子 4
对字符串说明符的演示:
$str1 = "Hello";
$str2 = "Hello world!";
echo sprintf("[%s]",$str1)."
";
echo sprintf("[%8s]",$str1)."
";
echo sprintf("[%-8s]",$str1)."
";
echo sprintf("[%08s]",$str1)."
";
echo sprintf("[%'*8s]",$str1)."
";
echo sprintf("[%8.8s]",$str2)."
";
?>