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