Kursus anbefaling:

PHP vprintf() funktion

Eksempel

<?php
Outputter formaterede streng:
$number = 9;
$str = "Beijing";
?>

Kør eksempel

vprintf("Der er 쥕lioner cykler i %s.", array($number, $str));

Definering og brug

vprintf() funktionen outputter formaterede strenge.

Comment:I modsætning til printf() er parametrene i vprintf() placeret i en array. Arrayens elementer indsættes i hovedstrengens %-symboler. Funktionen udføres trin for trin. Ved det første %-symbol indsættes det første arrayelement, ved det andet %-symbol indsættes det andet arrayelement, osv. arg Hvis der er flere parametre, skal du bruge pladsholdere. Pladsholderen indsættes efter % og består af et tal og "\$". Se eksempel 2.

Vedligeholdelse:Relaterede funktioner: sprintf(), printf(), vsprintf(), fprintf() og vfprintf()

Syntaks

vprintf(format,argarray)
Parameter Beskrivelse
format

Obligatorisk. Angiver streng og hvordan variablerne i den skal formateres.

Mulige formateringsværdier:

  • %% - Returnerer en procenttegn (%)
  • %b - Binært tal
  • %c - ASCII værdi tilhørende tegn
  • %d - Dekimalt tal med plus eller minus (negativ, 0, positiv)
  • %e - Brug af små bogstaver i videnskabelig notation (f.eks. 1.2e+2)
  • %E - Brug af store bogstaver i videnskabelig notation (f.eks. 1.2E+2)
  • 蒝ekimalt tal uden plus eller minus (mindst 0)
  • %f - Flydende tal (lokal indstilling)
  • %F - Flydende tal (ikke lokal indstilling)
  • %g - Kortere %e og %f
  • %G - Kortere %E og %f
  • %o - Oktal tal
  • %s - Streng
  • %x - Hexadecimalt tal (små bogstaver)
  • %X - Hexadecimalt tal (store bogstaver)

Yderligere formateringsværdier. Skal placeres mellem % og bogstaverne (f.eks. %.2f):

  • + (tilføjer + eller - foran tal for at definere positiv eller negativt. Som standard markeres kun negative tal, positive tal markeres ikke)
  • ' (angiver, hvad der skal bruges som fyldning, standard er mellemrum. Det skal bruges sammen med bredden specificereren. Eksempel: '%'x20s (brug af "x" som fyldning)
  • - (justerer variabelværdier til venstre)
  • [0-9] (angiver den mindste bredde for variabelværdier)
  • .[0-9] (specifies the number of decimal places or the maximum string length)

Comment:If multiple format values are used, they must be in the order specified above.

argarray Required. An array with parameters, which will be inserted into format At the %% symbol in the string.

Technical details

Return value: Returns the length of the string output.
PHP version: 4.1.0+

More examples

Example 1

Use format value %%f:

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

Kør eksempel

Example 2

Use placeholders:

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

Kør eksempel

Example 3

Use printf() to demonstrate all possible format values:

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // ASCII character 50 is 2
// Comment: The format value "%%" returns a percent sign
printf("%%b = %b <br>",$num1); // Binary number
printf("%%c = %c <br>",$char); // ASCII character
printf("%%d = %d <br>",$num1); // Signed decimal number
printf("%%d = %d <br>",$num2); // Signed decimal number
printf("%%e = %e <br>",$num1); // Scientific notation (lowercase)
printf("%%E = %E <br>",$num1); // Scientific notation (uppercase)
printf("%鑾u <br>",$num1); // Unsigned decimal number (positive)
printf("%鑾u <br>",$num2); // Unsigned decimal number (negative)
printf("%%f = %f <br>",$num1); // Floating point number (considering local settings)
printf("%%F = %F <br>",$num1); // Floating point number (not considering local settings)
printf("%%g = %g <br>",$num1); // Shorter than %%e and %%f
printf("%%G = %G <br>",$num1); // Shorter than %%E and %%f
printf("%%o = %o <br>",$num1); // Octal
printf("%%s = %s <br>",$num1); // Streng
printf("%%x = %x <br>",$num1); // Hexadecimaltal (små bogstaver)
printf("%%X = %X <br>",$num1); // Hexadecimaltal (store bogstaver)
printf("%%+d = %+d <br>",$num1); // Symboliskerare (positiv)
printf("%%+d = %+d <br>",$num2); // Symboliskerare (negativ)
?>

Kør eksempel

Eksempel 4

Demonstration af strengsymboler:

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

Kør eksempel