Forum Webscript.Ru
Программирование => PHP => Тема начата: 718972 от 07 Июня 2005, 11:29:20
-
есть, допустим, такая строка $s=мебель для нового дома;
как записать на php такую логику:
ЕСЛИ 1я буква строки НЕ Заглавная ТО сделать(заменить) первую букву в строке на заглавную :confused:
или
ЕСЛИ вся строка набрана заглавными буквами, или в строке есть \'подстроки\'(например, в приведенном мною выше примере строки, заглавными буквами набрано \'ДЛЯ НОВОГО\') набранные заглавными буквами, ТО привести строку к такому виду: 1я буква заглавная, остальные - строчные
-
а не проще ли сделать так:
$str="типа Текст бла бла БЛА бла бла БЛА БЛА";
$str_new=strtoupper(substr($str,0,1)).strtolower(substr($str,1,strlen($str)));
echo $str_new;
?>
-
спасибо за ответ, AlieN
тИПА ТЕКСТ БЛА БЛА БЛА БЛА БЛА БЛА БЛА
инвертировать бы её..
-
$str="тИПА ТЕКСТ БЛА БЛА БЛА БЛА БЛА БЛА БЛА ";
$str_new=strtoupper(substr($str,0,1)).strtolower(substr($str,1,strlen($str)));
echo $str_new;
?>
Результат испольнения:
Типа текст бла бла бла бла бла бла бла
В чем проблема?
-
Парни, а может проще?
$bar = ucfirst(strtolower($bar));
пример взял из мануала :)
http://www.php.net/manual/ru/function.ucfirst.php
-
DiJay
[off]Я ждал этого ответа :)[/off]
-
Парни, а может проще?
$bar = ucfirst(strtolower($bar));
Принадлежность того или иного символа к буквенным определяется с учетом текущей локали. Это означает, что, например, в используемой по умолчанию локали "C" locale, символ Ä не будет преобразован.
как же быть с русским (кириллица) текстом
-
наверное, вопрос снят? :
setlocale(LC_ALL, \'ru_RU.CP1251\');
$str = ucfirst(strtolower($str));
единственное, не нужно ли эту локалю обратно вернуть.. а то может где скажется.. ??