这是我的代码:
<?php
$str1 = "Hello";
printf("[%99s]",$str1);
?>
我希望它输出 94 个空格作为填充来满足最小长度。为什么它只在字符串右侧输出 1 个空格?
如果您要输出到网页,HTML 看不到空格(如果您检查源代码,可能存在 94 个空格)。你必须用' '
.
试试这个:
echo str_replace(' ', ' ', sprintf("[%-99s]\n", $str1));
您的代码添加了正确数量的空格。您的问题很可能只是您在浏览器中查看它的表示而不是源代码。在 HTML 中,多个空格将合并为一个空格。
在浏览器源代码中查看您的输出或使用以下命令:
<pre>
<?php
$str1 = "Hello";
printf("[%99s]",$str1);
?>
</pre>