对齐说明符和宽度说明符如何与 PHP 中的 printf() 和 sprintf() 一起使用?

问题描述 投票:0回答:2

我正在研究

printf
sprintf
,有几点我不明白。有人可以帮我理解以下在
format
 解释的 
sprintf()
说明符吗:

  • 可选的对齐说明符,表示结果应该左对齐还是右对齐。默认是右对齐;这里的 - 字符将使其左对齐。

  • 一个可选数字,一个宽度说明符,表示此转换应产生多少个字符(最少)。

php function printf
2个回答
7
投票

宽度说明符:

given:    printf('|%5d|', 1);
prints:   |    1|
           ^^^^^-- 4 spaces + 1 char = width of 5

对齐:

given:    printf('|%-5d|', 1);
prints    |1    |
           ^^^^^-- 1 char + 4 right-justified spaces = width of 5.

2
投票

举个简单的例子:

<?php

$strs = "hello world";
printf("%-15s", $strs);
echo "\n";
printf("%15s", $strs);

?>

输出:

hello world    
    hello world

^^^^^^^^^^^^^^^
|||||||||||||||
123456789012345  (width=15)

这里15是字符串的最小打印宽度,

-
符号是为了让字符串在左边缩进

© www.soinside.com 2019 - 2024. All rights reserved.