Funksi ya PHP vsprintf()

Mifano

Kusoma kijadili cha kufomatiwa kwenye muaramo wa muhimu:

<?php
$number = 9;
$str = "Beijing";
$txt = vsprintf("Kuna 욯anikio ya mbuzi katika %s.", array($number, $str));
echo $txt;
?>

Mfano wa mchakato

Ufafanuzi na matumizi

Funksi ya vsprintf() inasema kijadili cha kufomatiwa kwenye muaramo wa muhimu.

Kwa sasa, kama sprintf(), parameter za vsprintf() zinaenea katika orodha. Majadiliano ya orodha yanaingizwa katika kijadili cha kawaida kwa sababu ya simu ya bolezo (%). Programu hii inafanyishwa kipya kipya. Kwenye simu ya bolezo ya kwanza, majadiliano ya kwanza inaingizwa, kwenye simu ya bolezo ya pili, majadiliano ya pili inaingizwa, na kifo kifo.

Mafanikio:如果 % 符号多于 arg 参数,则您必须使用占位符。占位符被插入到 % 符号之后,由数字和 "\$" 组成。请参见例子 2。

提示:相关函数:

语法

vsprintf(format,argarray)
参数 描述
format

必需。规定字符串以及如何格式化其中的变量。

可能的格式值:

  • %% - 返回一个百分号 %
  • %b - 二进制数
  • %c - ASCII 值对应的字符
  • %d - 包含正负号的十进制数(负数、0、正数)
  • %e - 使用小写的科学计数法(例如 1.2e+2)
  • %E - 使用大写的科学计数法(例如 1.2E+2)
  • %u - 不包含正负号的十进制数(大于等于 0)
  • %f - 浮点数(本地设置)
  • %F - 浮点数(非本地设置)
  • %g - 较短的 %e 和 %f
  • %G - 较短的 %E 和 %f
  • %o - Namba ya kina kina
  • %s - Nukuu
  • %x - Namba ya kina kina (herufi kicukuu)
  • %X - Namba ya kina kina (herufi kubwa)

Vifaa ya kufomati zaidi. Inahitajika kuwa kati ya % na herufi (kwa mfano: %.2f):

  • + (Inaingiza + au - kwenye kina kina, kwa mfano: %.2f (inaangazia ukurasa wa thamani wa kina kina na kina kina))
  • ' (Inaangazia uharifu wa kufikiria, kwa mfano: '%'x20s (inaongea na 'x' kama uharifu))
  • - (Inaingiza thamani kushika kushika)
  • [0-9] (Inaangazia ukurasa wa thamani wa kiwango chenye kina)
  • .[0-9] (Inaangazia ukurasa wa maji au ukurasa wa kikata kwa kina)

Mafanikio:Ikiwa inatumiwa na ukurasa wa kufomati zaidi ya moja, zitasaidia kutumika kwa kufikiria ambao zimeandikwa juu, bila kusababisha kusababisha.

argarray Inayohitajika. Kipakilio cha kiwango chenye thamani za kufikiria, ambazo zitasaidia kuingizwa format Simu % chini ya nukuu.

Vifaa ya kidhamiaji

Thamani ya kuzalishwa: Kurudisha thamani ya mawakili kama chini ya mtumishi wa kufomati.
Versi ya PHP: 4.1.0+

Mafanikio mengi

Mfano 1

kutumia ukurasa %f:

<?php
$num1 = 123;
$num2 = 456;
$txt = vsprintf("%f%f",array($num1,$num2));
echo $txt;
?>

Mfano wa mchakato

例子 2

使用占位符:

<?php
$number = 123;
$txt = vsprintf("有两位小数:%1\$.2f<br>没有小数:%1\$u",array($number));
echo $txt;
?>

Mfano wa mchakato

例子 3

使用 sprintf() 来演示所有可能的格式值:

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // ASCII 字符 50 ni 2
// 注释:格式值 "%%" 返回百分号
echo sprintf("%%b = %b",$num1)."<br>"; // 二进制数
echo sprintf("%%c = %c",$char)."<br>"; // ASCII 字符
echo sprintf("%%d = %d",$num1)."<br>"; // 带符号的十进制数
echo sprintf("%%d = %d",$num2)."<br>"; // 带符号的十进制数
echo sprintf("%%e = %e",$num1)."<br>"; // 科学计数法(小写)
echo sprintf("%%E = %E",$num1)."<br>"; // 科学计数法(大写)
echo sprintf("%鑾u",$num1)."<br>"; // 不带符号的十进制数(正)
echo sprintf("%鑾u",$num2)."<br>"; // 不带符号的十进制数(负)
echo sprintf("%%f = %f",$num1)."<br>"; // 浮点数(视本地设置)
echo sprintf("%%F = %F",$num1)."<br>"; // 浮点数(不视本地设置)
echo sprintf("%%g = %g",$num1)."<br>"; // 短于 %e 和 %f
echo sprintf("%%G = %G",$num1)."<br>"; // 短于 %E 和 %f
echo sprintf("%%o = %o",$num1)."<br>"; // 八进制数
echo sprintf("%%s = %s",$num1)."<br>"; // 字符串
echo sprintf("%%x = %x",$num1)."<br>"; // Number ya kifungu (kichwa)
echo sprintf("%%X = %X",$num1)."<br>"; // Number ya kifungu (kubwa)
echo sprintf("%%+d = %+d",$num1)."<br>"; // Misemo ya ufupi (kina)
echo sprintf("%%+d = %+d",$num2)."<br>"; // Misemo ya ufupi (kina)
?>

Mfano wa mchakato

Mfano 4

Tukio la kitabu cha misemo:

<?php
$str1 = "Hello";
$str2 = "Hello world!";
echo vsprintf("[%s]",array($str1))."<br>";
echo vsprintf("[%8s]",array($str1))."<br>";
echo vsprintf("[%-8s]",array($str1))."<br>";
echo vsprintf("[%08s]",array($str1))."<br>";
echo vsprintf("[%'*8s]",array($str1))."<br>";
echo vsprintf("[%8.8s]",array($str2))."<br>";
?>

Mfano wa mchakato