Оптимизация алгоритма обработки строки. PHP

На вход такая строка - "string1_string2_string3", на выход - "string1String2String3";

Мое решение(на отказоустойчивость не смотрите):

function changeString($string){
    $parts = explode('_', $string);
    $partsCount = count($parts);
    for ($i = 1; $i < $partsCount; $i++){
        $parts[$i][0] = toUpper($parts[$i][0]);
    }

    return implode('', $parts);
}

Помогите оптимизировать.


Ответы (1 шт):

Автор решения: Вадим Александру
$str = 'string1_string2_string3';

$out = lcfirst(str_replace('_', '', ucwords($str, '_')));

print_r($out);
→ Ссылка