0

我有两个要组合的字符串,并且没有超过一定的宽度。

$string = sprintf("%4(%s %s)", $s1, $s2);
//s1 s

请注意组合的 %s %s 如何不超过 4 的宽度。

我怎样才能用 sprintf 做到这一点?

谢谢!

4

2 回答 2

1

我不确定如何使用 sprintf 执行此操作,但您可以使用substr()执行此操作;

$string = substr("$s1 $s2",0,4);

这应该返回相同的结果

于 2012-10-05T23:58:03.607 回答
1

您可能需要为您的问题添加更多细节 - 如果字段长度超过 3 个字符(4 - 一个空格),您希望发生什么?

但也许这就是你想要的:

sprintf("%.4s", "$s1 $s2");

这将输出组合的 string "$s1 $s2",修剪为 4 个字符。当然 substr 也会这样做,这在较长格式字符串的上下文中可能很有用。

老实说,我之前没有意识到精度说明符(.后跟数字)可以与%s.

于 2012-10-06T00:06:08.397 回答