Добрый день! Ситуация следующая. нужно чтобы при написании первая буква становилась заглавной. Вот код: Код (Text): $name = 'тест'; $first = mb_substr($name,0,1);//первая буква $last = mb_substr($name,1);//все кроме первой буквы //$first = strtoupper($first); //$last = strtolower($last); //$name1 = $first.$last; echo "$name <br /> $first <br /> $last"; А на выходе вижу: тест � �ест Много находил упоминаний об iconv но конкретных решений не встричал! Из какой кодировки переводить что бы нормально отображались символы.
А если тоже самое сделать английскими буквами то все работает. вот пример: Код (Text): $name = 'avatar'; //$name = iconv("???", "UTF-8", $name); $first = mb_substr($name,0,1);//первая буква $last = mb_substr($name,1);//все кроме первой буквы $first = strtoupper($first); $last = strtolower($last); $name1 = $first.$last; echo "$name <br /> $first <br /> $last <br /> $name1"; Выводит: avatar A vatar Avatar
ОК! Какой-то прогресс есть но все равно не то! Вот код: Код (Text): $name = 'тест'; //$name = iconv("UTF-8", "UTF-8", $name); $first = mb_substr($name,0,1, 'UTF-8');//первая буква $last = mb_substr($name,1);//все кроме первой буквы $first = strtoupper($first); $last = strtolower($last); $name1 = $first.$last; echo "$name <br /> $first <br /> $last <br /> $name1"; Видим: тест т �ест т�ест
Все решил спасибо большое!!! Вот решение: Код (Text): $name = 'тест'; //$name = iconv("UTF-8", "UTF-8", $name); $first = mb_substr($name,0,1, 'UTF-8');//первая буква $last = mb_substr($name,1);//все кроме первой буквы $first = mb_strtoupper($first, 'UTF-8'); $last = mb_strtolower($last, 'UTF-8'); $name1 = $first.$last; echo "$name1"; Видим: Тест
PHP: $first = mb_substr($name,0,1, 'UTF-8');//первая буква зы: зачем используешь mb_ если не используешь кодировки??? string mb_substr ( string $str , int $start [, int $length [, string $encoding ]] )
Как это не использую кодировку. а это что? $first = mb_substr($name,0,1, 'UTF-8'); $first = mb_strtoupper($first, 'UTF-8'); $last = mb_strtolower($last, 'UTF-8');