ucwords
ucwords($retezec, $oddelovace)
Vrátí řetězec, ve kterém je první písmeno každého slova převedené na velké. Ostatní písmena nechá beze změny. Používá se hlavně na jména a názvy.
Parametry
- $retezec – převáděný text.
- $oddelovace – nepovinný, znaky, za kterými začíná nové slovo. Výchozí jsou mezera, tabulátor a konce řádků.
Příklady
echo ucwords("jan novák"); // Jan Novák
// ostatní písmena nemění
echo ucwords("JAN NOVAK"); // JAN NOVAK
echo ucwords(strtolower("JAN NOVAK")); // Jan Novak
// spojovník slova ve výchozím stavu neodděluje
echo ucwords("jan-petr novák"); // Jan-petr Novák
echo ucwords("jan-petr novák", " -"); // Jan-Petr Novák
// slovo, které začíná písmenem s diakritikou, zůstane malé
echo ucwords("šárka černá"); // šárka černá
// český text převede mb_convert_case
echo mb_convert_case("šárka černá", MB_CASE_TITLE); // Šárka Černá
echo mb_convert_case("JAN NOVÁK", MB_CASE_TITLE); // Jan Novák
Na co si dát pozor
- Funkce pracuje po bajtech – slovo v UTF-8, které začíná písmenem s diakritikou (č, ř, š, ž…), nechá malé. Pro český text použijte mb_convert_case($text, MB_CASE_TITLE).
- Mění jen první písmena. Z textu psaného velkými písmeny udělá „Jan Novak“ až po převodu na malá písmena. mb_convert_case s MB_CASE_TITLE zmenší zbytek slova sám.
- Druhý parametr výchozí oddělovače nahrazuje, nepřidává k nim. Když má slova oddělovat spojovník i mezera, musí být v parametru oba znaky.
- Skutečná jména mají výjimky, které žádná automatika nepozná (McDonald, van der Waals, de la Cruz). Jméno zadané uživatelem je proto lepší neupravovat.
Příbuzné funkce:
ucfirst()
lcfirst()
strtolower()
mb_convert_case()