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()