ucwords

Uppercase the first character of each word in a string

Description

string ucwords(string $string, string $separators = " \t\r\n\f\v")

Returns a string with the first character of each word in string capitalized, if that character is an ASCII character between "a" (0x61) and "z" (0x7a).

For this function, a word is a string of characters that are not listed in the separators parameter. By default, these are: space, horizontal tab, carriage return, newline, form-feed and vertical tab.

To do a similar conversion on multibyte strings, use mb_convert_case with the MB_CASE_TITLE mode.

Parameters

string

The input string.

separators

The optional separators contains the word separator characters.

Return Values

Returns the modified string.

Changelog

Version Description
8.2.0 Case conversion no longer depends on the locale set with setlocale. Only ASCII characters will be converted.

Examples

Example #1 ucwords example

<?php
$foo = 'hello world!';
$foo = ucwords($foo);             // Hello World!

$bar = 'HELLO WORLD!';
$bar = ucwords($bar);             // HELLO WORLD!
$bar = ucwords(strtolower($bar)); // Hello World!
?>

Example #2 ucwords example with custom delimiter

<?php
$foo = 'hello|world!';
$bar = ucwords($foo);             // Hello|world!

$baz = ucwords($foo, "|");        // Hello|World!
?>

Example #3 ucwords example with additional delimiters

<?php
$foo = "mike o'hara";
$bar = ucwords($foo);                 // Mike O'hara

$baz = ucwords($foo, " \t\r\n\f\v'"); // Mike O'Hara
?>

Notes

Note: This function is binary-safe.

See Also

  • strtoupper
  • strtolower
  • ucfirst
  • mb_convert_case