Ultimele tutoriale de dezvoltare web
 

PHP sprintf() Function

<PHP String Reference

Exemplu

Înlocuiți procente (%) semnul de o variabilă a trecut ca argument:

<?php
$number = 9;
$str = "Beijing";
$txt = sprintf("There are %u million bicycles in %s.",$number,$str);
echo $txt;
?>
Run exemplu »

Definiție și utilizare

sprintf() Functia scrie un șir de caractere formatat la o variabilă.

Arg1, arg2 ++ parametri vor fi inserate la sută (%) semne în șirul principal. Această funcție funcționează "step-by-step" . La primul semn%, se introduce arg1, la al doilea semn%, se introduce arg2, etc.

Note: În cazul în care există mai multe semne% decât argumente, trebuie să utilizați substituenți. Un înlocuitor se introduce după semnul%, și constă din numărul argument- și "\$" . A se vedea, de exemplu, două.

Tip: Related funcții: printf() , vprintf() , vsprintf() , fprintf() și vfprintf()


Sintaxă

sprintf( format,arg1,arg2,arg++ )

Parametru Descriere
format Necesar. Specifică șirul și modul de formatare variabilele în ea.

Valori format posibile:

  • %% - Returnează un semn la sută
  • % B - număr binar
  • % C - Caracterul conform valorii ASCII
  • % d - Signed număr zecimal (negative, zero or positive)
  • % e - Scientific notation folosind o literă mică (eg 1.2e+2) de (eg 1.2e+2) , (eg 1.2e+2)
  • % E - notatie Scientific folosind un majuscule (eg 1.2E+2) de (eg 1.2E+2) , (eg 1.2E+2)
  • % u - număr zecimal Nesemnate (equal to or greather than zero)
  • % f - numărul de virgulă flotantă (local settings aware)
  • % F - Număr de virgulă mobilă (nu setările locale conștient)
  • % G - mai scurtă% e și f%
  • % G - mai scurt de% E și% f
  • % O - numărul octal
  • % S - String
  • % x - numărul esadecimala (lowercase letters) cu (lowercase letters)
  • % X - numărul esadecimala (uppercase letters)

Valori format suplimentare. Acestea sunt amplasate între% și litera (example %.2f) :

  • + (atât forțele + și - în fața numerelor În mod implicit, numai numerele negative sunt marcate.)
  • „(Specifică de utilizat ca umplutură implicită este spațiu trebuie utilizat împreună cu specificatorul lățime Exemplu:...%“ X20s (this uses "x" as padding)
  • - (Left-justifies the variable value)
  • [0-9] (Specifies the minimum width held of to the variable value) a (Specifies the minimum width held of to the variable value)
  • . [0-9] (Specifică numărul de cifre zecimale sau lungime maximă șir)

Note: În cazul în care se folosesc mai multe valori de format suplimentare, acestea trebuie să fie în aceeași ordine ca mai sus.

arg1 Necesar. Argumentul care urmează să fie inserat la prima -sign% în șirul de format
arg2 Opțional. Argumentul care urmează să fie inserat la a doua -sign% în șirul de format
arg++ Opțional. Argumentul care urmează să fie inserat la al treilea, al patrulea, etc% -sign în șirul de format

Detalii tehnice

Întoarcere Valoare: Returnează șirul de formatat
Versiune PHP: 4+

Mai multe exemple

Exemplul 1

Cu ajutorul valorii de format% f:

<?php
$number = 123;
$txt = sprintf("%f",$number);
echo $txt;
?>
Run exemplu »

Exemplul 2

Utilizare a substituenților:

<?php
$number = 123;
$txt = sprintf("With 2 decimals: %1\$.2f
<br>With no decimals: %1\$u",$number);
echo $txt;
?>
Run exemplu »

Exemplul 3

O demonstrație a tuturor valorilor format posibile:

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // The ASCII Character 50 is 2

// Note: The format value "%%" returns a percent sign
echo sprintf("%%b = %b",$num1)."<br>"; // Binary number
echo sprintf("%%c = %c",$char)."<br>"; // The ASCII Character
echo sprintf("%%d = %d",$num1)."<br>"; // Signed decimal number
echo sprintf("%%d = %d",$num2)."<br>"; // Signed decimal number
echo sprintf("%%e = %e",$num1)."<br>"; // Scientific notation (lowercase)
echo sprintf("%%E = %E",$num1)."<br>"; // Scientific notation (uppercase)
echo sprintf("%%u = %u",$num1)."<br>"; // Unsigned decimal number (positive)
echo sprintf("%%u = %u",$num2)."<br>"; // Unsigned decimal number (negative)
echo sprintf("%%f = %f",$num1)."<br>"; // Floating-point number (local settings aware)
echo sprintf("%%F = %F",$num1)."<br>"; // Floating-point number (not local sett aware)
echo sprintf("%%g = %g",$num1)."<br>"; // Shorter of %e and %f
echo sprintf("%%G = %G",$num1)."<br>"; // Shorter of %E and %f
echo sprintf("%%o = %o",$num1)."<br>"; // Octal number
echo sprintf("%%s = %s",$num1)."<br>"; // String
echo sprintf("%%x = %x",$num1)."<br>"; // Hexadecimal number (lowercase)
echo sprintf("%%X = %X",$num1)."<br>"; // Hexadecimal number (uppercase)
echo sprintf("%%+d = %+d",$num1)."<br>"; // Sign specifier (positive)
echo sprintf("%%+d = %+d",$num2)."<br>"; // Sign specifier (negative)
?>
Run exemplu »

Exemplul 4

O demonstrație de specificatori de coarde:

<?php
$str1 = "Hello";
$str2 = "Hello world!";

echo sprintf("[%s]",$str1)."<br>";
echo sprintf("[%8s]",$str1)."<br>";
echo sprintf("[%-8s]",$str1)."<br>";
echo sprintf("[%08s]",$str1)."<br>";
echo sprintf("[%'*8s]",$str1)."<br>";
echo sprintf("[%8.8s]",$str2)."<br>";
?>
Run exemplu »

<PHP String Reference