Мне нужно переключить весь текст в верхнем регистре, начиная с первой буквы каждого слова в верхнем регистре и остальных строчных, но не после пробела, также если перед ним стоит косая черта:
Пример: TELEPHONY / MOBILE PHONE /АКСЕССУАРЫ
Должны стать: Телефония / Мобильный телефон / Аксессуар
function upperCaseString($string)
{
$str = $string;
$arr = explode(" ", $str); // make it array
foreach($arr as &$word){ // loop array
if(!preg_match("/\d/", $word)){ // is there not a digit in the word
$word = ucwords(strtolower($word));
}
}
echo implode(" ", $arr); // implode array to string
}
$str = "TELEPHONY/MOBILE PHONE/ACCESSORIES";
upperCaseString($str);
К сожалению, он возвращается: Телефония / Мобильный телефон / аксессуары