Funksi ya PHP vfprintf()

Mifano

Kuandika maelezo kwenye faili ya kitabu "test.txt":

<?php
$number = 9;
$str = "Beijing";
$file = fopen("test.txt", "w");
echo vfprintf($file,"Kuna 쥕lion mabasi katika %s.",array($number,$str));
?>

Kodi ya juu inaonyesha:

40

Maelezo ya hivi karibuni yatapendekezwa kwenye faili "test.txt":

Kuna mabasi 9 milioni katika Beijing.

Muundo na matumizi

Funksi ya vfprintf() inasababisha kusoma kina ya muundo wa kina kwa uwanja wa kina wa kuzingatia (kama: file na database).

Kuna uwanja wa kina vfprintf() ina parameter katika matokeo wa orodha. Mayelezo ya orodha yatapendekezwa kwenye herufi ya % katika kina wa kina. Programu hii inafanyishwa kila mara. Kwenye herufi ya % ya kwanza, mayelezo ya kina ya kwanza inapendekezwa, kwenye herufi ya % ya pili, mayelezo ya kina ya pili inapendekezwa, na k.s.

註釋:Ikiwa herufi ya % ina ngumu zaidi ya arg Ikiwa inahitajika parameter, inahitajika kusaidia mifano. Mifano huitumiwa kufikia kwenye % baada ya herufi. Tazama mifano 2.

Matumizi ya maana:

Muundo

vfprintf(stream,format,argarray)
Matumizi Maelezo
stream Inahitajika. Inasababisha kuandika/kuweka kwenye nchi ya jarida.
format

Inahitajika. Inasababisha jarida na jinsi ya kumwambilia kwenye kina hiki.

Mifano ya muundo:

  • %% - Kumeza herufi ya pondo %
  • %b - Namba ya pekee (kwa zilembeta)
  • %c - Herufi kwa chini ya namba ya ASCII
  • %d - Namba zaani kwa herufi za uadilifu (ina uadilifu, 0, na uadilifu wa kina)
  • %e - Kwa kutumia uadilifu wa kilimanikia chake (kama 1.2e+2)
  • %E - Kwa kutumia uadilifu wa kilimanikia kubwa (kama 1.2E+2)
  • 蒧amba zaani bila herufi za uadilifu (ina ukubwa kubwa sana na 0)
  • %f - Namba zaani (kwa lugha ya hivi karibuni)
  • %F - Namba zaani (kama ukilinganishwa na mpangilio wa lugha)
  • %g - Kipande kidogo cha %e na %f
  • %G - Kipande kidogo cha %E na %f
  • %o - Namba ya pekee (kwa zilembeta)
  • %s - Jarida
  • %x - Namba ya pekee (herufi chake)
  • %X - Namba ya pekee (herufi kubwa)

Mifano ya muundo. Inahitajika kuweka kati ya % na herufi (kama %.2f):

  • + (Kuwa na kipata + au - na - chini kwa kuzingatia uadilifu wa namba. Kwa kawaida, tuweze kumwambie namba zinginezo zingekataa kumwambie)
  • ’ (規定使用什麼作為填充,默認是空格。它必須與寬度指定器一起使用。例如:%'x20s(使用 "x" 作為填充))
  • - (左調整變量值)
  • .[0-9] (規定變量值的最大寬度)
  • .[0-9] (規定小數位數或最大字符串長度)

註釋:如果使用多個格式值,它們必須按照以上順序。

argarray 必需。帶有參數的一個數組,這些參數會被插到 format 字符串中的 %% 符號處。

技術細節

返回值: 返回被寫字串的長度。
PHP version: 5+

更多實例

例子 1

把文本寫入到文件中:

<?php
$num1 = 123;
$num2 = 456;
$file = fopen("test.txt", "w");
vfprintf($file, "%f%f", array($num1, $num2));
?>

下面的文本將被寫入到文件 "test.txt" 中:

123.000000456.000000

例子 2

使用佔位符:

<?php
$number = 123;
$file = fopen("test.txt", "w");
vfprintf($file, "With 2 decimals: %1$.2f
\nWithout decimals: %1$u", array($number));
?>

下面的文本將被寫入到文件 "test.txt" 中:

With 2 decimals: 123.00
Without decimals: 123

例子 3

使用 printf() 來演示所有可能的格式值:

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // ASCII 字符 50 是 2
// 注釋:格式值 "%%" 返回百分號
printf("%%b = %%b <br>", $num1); // 二進制數
printf("%%c = %%c <br>", $char); // ASCII 字符
printf("%%d = %%d <br>", $num1); // 帶符號的十進制數
printf("%%d = %%d <br>", $num2); // 帶符號的十進制數
printf("%%e = %%e <br>", $num1); // 科學計數法(小寫)
printf("%%E = %%E <br>", $num1); // 科學計數法(大寫)
printf("%鑾u <br>",$num1); // Namba za juu za 10 (mbele)
printf("%鑾u <br>",$num2); // Namba za juu za 10 (kina)
printf("%%f = %f <br>",$num1); // Namba za juu za 16 (kichwa)
printf("%%F = %F <br>",$num1); // Namba za juu za 16 (kubwa)
printf("%%g = %g <br>",$num1); // Kwa uwanja wa %e na %f
printf("%%G = %G <br>",$num1); // Kwa uwanja wa %E na %f
printf("%%o = %o <br>",$num1); // Namba za juu za 8
printf("%%s = %s <br>",$num1); // Tukio
printf("%%x = %x <br>",$num1); // Namba za juu za 16 (kichwa)
printf("%%X = %X <br>",$num1); // Namba za juu za 16 (kubwa)
printf("%%+d = %+d <br>",$num1); // Mafano ya tafsiri (mbele)
printf("%%+d = %+d <br>",$num2); // Mafano ya tafsiri (kina)
?>

Mimbo ya mchakato