PHP nabízí několik metod pro tisk řetězcových výrazů, včetně sprintf, vsprintf a echo. Všechny mají stejný výstup, ale mezi použitím těchto metod je několik rozdílů. The vsprintf() se používá k formátování řetězce nahrazením držáků mezer odpovídajícími hodnotami. Je to podobné jako u funkce printf(). , ale umožňuje předávání hodnot v poli namísto jednotlivých argumentů.
V této příručce se naučíme používat funkci vsprintf() v PHP.
Použití funkce vsprintf() v PHP
Funkce vsprintf() zapíše naformátovaný řetězec do proměnné. Prvky jsou umístěny v poli a vkládají se krok za krokem přidáním znaku % mezi prvky. Tato funkce se hodí, když potřebujete zformátovat velké množství řetězců v kódu.
Syntax
Níže je uvedena syntaxe pro použití funkce vsprintf() v PHP:
vsprintf ( formát , arg_array )
Tato funkce má dva argumenty, jeden je formát a druhý je arg_array . Formát je řetězec obsahující zástupné symboly, které mají být nahrazeny. Druhá je arg_array který obsahuje hodnoty pole, které budou nahrazeny zástupnými symboly.
Zástupné symboly ve formátovacích řetězcích jsou označeny znakem % s písmenem, které určuje typ přidávané hodnoty.
Zástupný symbol | Datový typ |
---|---|
%d | Celé číslo |
%s | Tětiva |
%F | Plovoucí bod |
Poznámka : Hodnoty musí být uspořádány v přesném pořadí, v jakém se nacházejí v poli.
Příklad 1
V následujícím kódu je %s v vsprintf() je nahrazena hodnotami pole a uložena v řetězcové proměnné. Poté se výsledek vytiskne na konzole pomocí příkazu echo:
$array = [ 'Mango' , 'Oranžový' , 'Ananas' ] ;
$string = vsprintf ( 'Líbí se mi %s, %s a %s.' , $array ) ;
echo $string ;
?>
Příklad 2
V následujícím příkladu máme řetězec pojmenovaný jako formát se zástupnými symboly pro ID a jméno zaměstnance. Máme pole s oběma hodnotami. Hodnoty pole jsou předány jako argument do vsprintf() funkce. Tato funkce nahradí zástupné symboly hodnotami pole a zobrazí naformátovaný řetězec na konzole:
$hodnota = pole ( 'Zainab' , 'dvacet' ) ;
$formát = „ID zaměstnance %s je %d .' ;
$výstup = vsprintf ( $ formát , $hodnota ) ;
echo $výstup ;
?>
Sečteno a podtrženo
The funkce vsprintf(). je vestavěná funkce PHP, která se používá k nahrazení zástupných symbolů ekvivalentními hodnotami z pole. Hodnoty pole se vkládají na znak procenta s písmenem nebo do řetězce. Tato funkce je zvláště užitečná, když potřebujete podobným způsobem formátovat velké množství řetězců nebo když potřebujete formátovat řetězce dynamicky na základě vstupu uživatele nebo jiných proměnných.