我的代码中有以下行,它以6个字符显示我的输出,带有前导零。
$formatted_value = sprintf("%06d", $phpPartHrsMls);
我想用空格替换前导零。尝试过通过搜索本网站和其他网站找到的所有例子,但无法弄明白。
以下是我尝试过的一些内容。
$formatted_value = sprintf("%6s", $phpPartHrsMls);
$formatted_value = printf("[%6s]\n", $phpPartHrsMls); // right-justification with spaces
感谢您的帮助!!
答案 0 :(得分:7)
在浏览器中,空格将始终折叠。
尝试:
<pre><?php echo $formatted_value; ?></pre>
如果您对此感到满意,请查看CSS white-space:pre-wrap
- 一个非常有用的属性!
答案 1 :(得分:2)
这将左侧与空格对齐:
$formatted_value = sprintf("%6s", $phpPartHrsMls);
echo "<pre>" . $formatted_value . "</pre>";
这会将右边与空格对齐:
$formatted_value = sprintf("%-6s", $phpPartHrsMls);
echo "<pre>" . $formatted_value . "</pre>";
如果您只想打印六位数字,要打印其他数字:
$formatted_value = sprintf("%-6.6s", $phpPartHrsMls);
echo "<pre>" . $formatted_value . "</pre>";
还有一件事,浏览器通常会忽略这些空格,因此最好将输出包装在<pre>
标记中。
答案 2 :(得分:0)
您使用%06d
请尝试更大的数字。
您的代码可以在下面尝试:
printf('%20.2f', $phpPartHrsMls);
您可以在html上使用
空格。
答案 3 :(得分:0)
将前导零更改为前导空格:
$formatted_value = sprintf("%' 6s", $phpPartHrsMls);
答案 4 :(得分:0)
试试str_pad。
str_pad($phpPartHrsMls, 6, " ", STR_PAD_LEFT);