我一直在使用echo "$".sprintf("%01\$.2f",$numvar);
进行美元格式化,但我只复制并粘贴了它。我查看了php.net上的文档,但我仍然不清楚。
请帮助我理解"%01\$.2f"
的每个部分在该功能中的作用。
答案 0 :(得分:4)
%
是转换规范的开头
01\$
表示该值将放在结果的第一项
更常见的是,同样会写成1$
.2
是精度说明符,它指示应显示多少位数
f
表示该参数被视为浮点数,并显示为浮点数(可识别区域设置)
有关上述内容以及可用内容的完整详情,请参阅sprintf()
的format
参数说明。
答案 1 :(得分:1)
sprint
函数的第一个参数是“格式”。可能的格式包括:
可能的格式值:
- %% - 返回百分号
- %b - 二进制数
- %c - 符合ASCII值的字符
- %d - 有符号十进制数
- %e - 科学记数法(例如1.2e + 2)
- %u - 无符号十进制数
- %f - 浮点数(可识别本地设置)
- %F - 浮点数(不知道本地设置)
- %o - 八进制数
- %s - 字符串
- %x - 十六进制数字(小写字母)
- %X - 十六进制数字(大写字母)
醇>其他格式值。它们放在%和。之间 字母(例如%.2f):
- “+”(在数字前面强制+和 - 。默认情况下,只标记负数)
- '(指定用作填充的内容。默认为空格。必须与宽度说明符一起使用。例如:%'x20s(这使用“x”为 填充)
- “ - ”(左对齐变量值)
- [0-9](指定保持变量值的最小宽度)
- 。[0-9](指定小数位数或最大字符串长度)
醇>