in src/str/transform.php [46:75]
function capitalize_words(
string $string,
?string $delimiters = null,
)[]: string {
if ($string === '') {
return $string;
}
if ($delimiters === null) {
// Delimiters are defined by the locale
return _Str\titlecase_l($string, /* locale = */ null);
}
$words = vec[];
$offset = 0;
$length = \strlen($string);
while ($offset < $length) {
$substr_len = \strcspn($string, $delimiters, $offset);
$words[] = tuple(
\substr($string, $offset, $substr_len),
$offset + $substr_len < $length ? $string[$offset + $substr_len] : ''
);
$offset += $substr_len + 1;
}
$string = '';
foreach ($words as list($word, $delimiter)) {
$string .= namespace\capitalize($word).$delimiter;
}
return $string;
}