您好,登錄后才能下訂單哦!
在 PHP 中,使用 sprintf
函數(shù)可以格式化字符串,它允許你定義輸出字符串的格式。sprintf
函數(shù)的語法如下:
sprintf(format, [arg1 [, arg2 [, ...]]] )
其中 format
是格式化字符串,arg1, arg2, ...
是要插入到格式化字符串中的參數(shù)。
下面是一些使用 sprintf
的示例:
$name = "John";
$age = 30;
$message = sprintf("My name is %s and I am %d years old.", $name, $age);
echo $message; // 輸出: My name is John and I am 30 years old.
$name = "John";
$age = 30;
$score = 85;
$message = sprintf("My name is %s, I am %d years old, and I scored %d in the exam.", $name, $age, $score);
echo $message; // 輸出: My name is John, I am 30 years old, and I scored 85 in the exam.
$name = "John";
$age = 30;
$message = sprintf("My name is %1$s, I am %2$d years old.", $name, $age);
echo $message; // 輸出: My name is John, I am 30 years old. 注意:數(shù)字的順序與參數(shù)的順序相反。
在上面的示例中,%1$s
表示第一個(gè)參數(shù)應(yīng)該被轉(zhuǎn)換為一個(gè)字符串,%2$d
表示第二個(gè)參數(shù)應(yīng)該被轉(zhuǎn)換為一個(gè)整數(shù)。數(shù)字表示參數(shù)的順序。
$data = [
['John', 30],
['Jane', 28],
['Doe', 35]
];
$max_name_length = max(strlen($name) for $name in array_column($data, 0));
$max_age_length = max(strlen($age) for $age in array_column($data, 1));
foreach ($data as $entry) {
$message = sprintf("%-*s | %-*d", $max_name_length, $entry[0], $max_age_length, $entry[1]);
echo $message . PHP_EOL;
}
輸出:
John | 30
Jane | 28
Doe | 35
注意:%-*s
和 %-*d
中的 -
表示左對齊,*
表示使用最小寬度,s
和 d
分別表示字符串和整數(shù)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。