English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La funzione sprintf() viene utilizzata per restituire una stringa formattata.
string sprintf ( string $format [, mixed $args [, mixed $... ]])
Usato per formattare stringhe, scrivere la stringa formattata in una variabile.
I parametri arg1, arg2, ++ vengono inseriti nei segni di percentuale (%) della stringa principale. La funzione è eseguita in modo progressivo. Al primo segno % viene inserito arg1, al secondo segno % viene inserito arg2, ecc.
Attenzione:Se ci sono più simboli % rispetto ai parametri arg, è necessario utilizzare i segnaposto. I segnaposto vengono inseriti dopo il simbolo % e sono composti da un numero e "\$". Vedi l'esempio 2.
Suggerimento:Funzioni correlate:printf(),vprintf(),vsprintf(),fprintf() evfprintf()
Restituisce una stringa formattata
Numero di serie | Parametro e descrizione |
---|---|
1 | format Obbligatorio. Specifica la stringa e come formattare le variabili all'interno di essa Valori di formato possibili:
Valori di formato aggiuntivi. Devono essere inseriti tra % e una lettera (ad esempio %.2f):
Commento:Se si utilizzano più valori di formato come quelli elencati sopra, devono essere utilizzati nell'ordine specificato, non possono essere disordinati. |
2 | arg1 Obbligatorio. Specifica il primo parametro da inserire nella stringa formattata |
3 | arg2 Opzionale. Specifica il secondo parametro da inserire nella stringa formattata |
... | arg++ Opzionale. Specifica i parametri da inserire nei simboli % del formato di stringa tra il terzo, quarto, quinto e così via. |
Prova l'esempio seguente, sostituisci il simbolo %f con una variabile passata come parametro:
<?php // Sostituisci il simbolo %f con una variabile passata come parametro $number = 123; $txt = sprintf("%f", $number); echo $txt; ?>Testa a vedere‹/›
Il risultato dovrebbe essere il seguente
123.000000
Esempio di illustrazione di tutti i valori di formato possibili del parametro format:
<?php $num1 = 123456789; $num2 = -123456789; $char = 50; // carattere ASCII 50 è 2 // Commento: il valore di formato "%%" restituisce il percento echo sprintf("%%b = %b", $num1)."<br>"; // numero binario echo sprintf("%%c = %c", $char)."<br>"; // carattere ASCII echo sprintf("%%d = %d", $num1)."<br>"; // numero decimale con segno echo sprintf("%%d = %d", $num2)."<br>"; // numero decimale con segno echo sprintf("%%e = %e", $num1)."<br>"; // notazione scientifica (minuscola) echo sprintf("%%E = %E", $num1)."<br>"; // notazione scientifica (maiuscola) echo sprintf("%鑾u", $num1)."<br>"; // numero decimale senza segno (positivo) echo sprintf("%鑾u", $num2)."<br>"; // numero decimale senza segno (negativo) echo sprintf("%%f = %f", $num1)."<br>"; // numero decimale (con la configurazione locale) echo sprintf("%%F = %F", $num1)."<br>"; // numero decimale (ignora la configurazione locale) echo sprintf("%%g = %g", $num1)."<br>"; // più corto di %%e e %%f echo sprintf("%%G = %G", $num1)."<br>"; // più corto di %%E e %%f echo sprintf("%%o = %o", $num1)."<br>"; // numero in ottale echo sprintf("%%s = %s", $num1)."<br>"; // stringa echo sprintf("%%x = %x",$num1)."<br>"; // Numero esadecimale (minimo) echo sprintf("%%X = %X",$num1)."<br>"; // Numero esadecimale (maggio) echo sprintf("%%+d = %+d",$num1)."<br>"; // Simbolo di segno (positivo) echo sprintf("%%+d = %+d",$num2)."<br>"; // Simbolo di segno (negativo) ?>Testa a vedere‹/›
Il risultato dovrebbe essere il seguente
%b = 111010110111100110100010101 %c = 2 %d = 123456789 %d = -123456789 %e = 1.234568e+8 %E = 1.234568E+8 钑23456789 钑8446744073586094827 %f = 123456789.000000 %F = 123456789.000000 %g = 1.23457e+8 %G = 1.23457E+8 %o = 726746425 %s = 123456789 %x = 75bcd15 %X = 75BCD15 %+d = +123456789 %+d = -123456789
Esempio di illustrazione dei simboli di stringa:
<?php $str1 = "Hello"; $str2 = "Hello PHP!"; 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>"; ?>Testa a vedere ‹/›
Risultato di output:
[Hello] [ Hello] [Hello ] [000Hello] [***Hello] [Hello PH]