Преобразование строки в PHP

165
28 апреля 2018, 16:51

Суть задачи такова - преобразовать строки с формата Var_text_text, в формат varTextText

Var_text_text => varTextText

Answer 1

Держи дружище, и не забудь зачесть ответ ;-)

$old_str = 'Var_text_text';
foreach (explode('_', $old_str) as $key => $str) {
    if ($key == 0) {
      $new_str = strtolower($str);
    } else {
      $new_str .= ucfirst(strtolower($str));
    }    
}
print_r($new_str);
Answer 2

Можно ещё таким способом (более кратким):

$str = 'Var_text1_text2_text3';
echo join(array_map(function($str){
    static $i = 0;
    return $i++ < 1 ? lcfirst($str) : ucfirst($str); 
}, explode('_', $str)));

Результат работы скрипта:

varText1Text2Text3
Answer 3

Способ первый

$str = 'Var_text_text';
// Преобразуем каждую первую букву слова в верхний регистр
// Слова разделяются символом '_'
$res = ucwords($str, '_');
// Удаляем символ '_' из строки
$res = str_replace('_', '', $res);
// Переводим первую букву в нижний регистр
$res = lcfirst($res);
echo $res;

Способ второй

$str = 'Var_text_text';
// разделяем строку на части по символу '_'
// и записываем эти части строки в массив
$parts = explode('_', $str);
$res = '';
// цикл по всем частям
foreach($parts as $part) {
    // склеиваем строку из частей,
    // при этом первую букву каждой части переводим в нихний регистр
    $res .= ucfirst($part);
}
// Переводим первую букву в нижний регистр
$res = lcfirst($res);
echo $res;
READ ALSO
PHP VK SDK - не получается авторизоваться

PHP VK SDK - не получается авторизоваться

Уже который час не могу выполнить авторизацию сообществаДелаю это с помощью нового VK SDK:

214
Вывод из нескольких столбцов

Вывод из нескольких столбцов

Проблема тривиальна, но нагуглить я её так и не смог, поэтому если подскажете в какую сторону смотреть буду очень благодаренСильно не пинайте,...

206
Curl Bash/cmd - curl php

Curl Bash/cmd - curl php

Подскажите как переделать Curl cmd/bash в curl phpУже сутки борюсь но ничего не выходит

218
Как с помощью pack() запаковать массив с string значениями?

Как с помощью pack() запаковать массив с string значениями?

Но данный способ не сработаетНа выходе будет array ( 1 => #FFFFFF );

155