Detailed explanation of PHP sprintf() formatting usage

藏色散人
Release: 2023-04-09 17:18:02
forward
4038 people have browsed it

推荐:《PHP视频教程

php sprintf函数是一个非常强大的函数,本篇文章特别记录一下php中的sprintf函数格式化字符串的相关用法。

定义和用法
sprintf() 函数把格式化的字符串写入一个变量中。

语法

sprintf(format,arg1,arg2,arg++)
Copy after login

参数 描述
format 必需。转换格式。
arg1 必需。规定插到 format 字符串中第一个 % 符号处的参数。
arg2 可选。规定插到 format 字符串中第二个 % 符号处的参数。
arg++ 可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。

说明
参数 format 是转换的格式,以百分比符号 (“%”) 开始到转换字符结束。下面的可能的 format 值:
%% - 返回百分比符号
%b - 二进制数
%c - 依照 ASCII 值的字符
%d - 带符号十进制数
%e - 可续计数法(比如 1.5e+3)
%u - 无符号十进制数
%f - 浮点数(本地设置)
%F - 浮点数(非本地设置)
%o - 八进制数
%s - 字符串
%x - 十六进制数(小写字母)
%X - 十六进制数(大写字母)

arg1, arg2, ++ 等参数将插入到主字符串中的百分号 (%) 符号处。该函数是逐步执行的。在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。

提示和注释
注释:如果 % 符号多于 arg 参数,则您必须使用占位符。占位符插到 % 符号后面,由数字和 “$“ 组成,如:n$。请参见例子2。
提示: 相关函数: fprintf()、 printf()、 vfprintf()、 vprintf() 以及 vsprintf()。

例子 1

echo sprintf("hello %s. Day number %d", 'hello', 123);
//输出:Hello world. Day number 123
Copy after login

例子 2

<?php
$number = 124 / 3;
$txt = sprintf("标准结果:%f,精确二位:%.2f", $number, $number);
//或者:$txt = sprintf("标准结果:%1\$f,精确二位:%1\$.2f", $number);
echo $txt;
//输出:标准结果:41.333333,精确二位:41.33
Copy after login

例子 3

//php格式化数字:位数不足前面加0补足
$var = sprintf("%04d", 2); //生成4位数,不足前面补0
echo $var;
//输出:0002
Copy after login

The above is the detailed content of Detailed explanation of PHP sprintf() formatting usage. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:learnku.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!