strtolower как перевести русский текст в маленький регистр

  • Автор темы CaNaBiS_XoR
  • Дата начала

CaNaBiS_XoR

Guest
strtolower как перевести русский текст в маленький регистр

Привет наблюдается трабла с переводом русского текста в маленький регистр тоесть проще говоря он не переводится.
Тоесть
$bla="ЛяЛя";
$bla1="LaLa";
$mb=strtolower($bla); // Русский не переводится в нижний
$mb1=strtolower($bla1); // English нормально переводится

Может кто уже сталкивался с этой проблемкой.
Заранее спасибо !
 

Morpheus

Guest
PHP:
function toupper($text){
	$text=strtr($text,"абвгдеёжзийклмнопрстуфхцчшщъыьэюяabcdefghijklmnopqrstuvwxyz","АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯABCDEFGHIJKLMNOPQRSTUVWXYZ");
	return $text;
}
Используй такую же функцию, только в strtr замени второй и третий параметры местами.
 

CaNaBiS_XoR

Guest
Млин делаю так
в $user текст может быть на русском может на англицком
<?
setlocale(LC_CTYPE , $user);
$mb=strtolower($user);
Print $mb;
?>
Но не работает это млин и так и сяк пробовал. Может что не так делаю ?
 

Profic

just Profic (PHP5 BetaTeam)
[m]setlocale[/m]() до просветления. в частности, что указывать в качестве второго параметра. так же не помешает прочитать комментарии
 

CaNaBiS_XoR

Guest
Все решение найденно
<?
setlocale(LC_CTYPE ,"ru_RU.CP1251");
$mb=strtolower("AbRaКаДаБрА");
Print $mb;
?>
Сенкс !
 

Фанат

oncle terrible
Команда форума
neko, а мне нравится.
все-таки, более переносимое решение.
не люблю зависеть от хостера
 

Profic

just Profic (PHP5 BetaTeam)
Фанат
PHP:
setlocale (LC_ALL, array ('ru_RU.CP1251', 'rus_RUS.1251'));
решает проблему переносимости. А если у хостера нет нужной локали (которую создать - дело 1 минуты), то ИМХО от такого хостера добра не жди :)
 

tony2001

TeaM PHPClub
neko
"брысь" говори своим домашним, а здесь будь добр сменить тон и аргументировать.
 

Фанат

oncle terrible
Команда форума
Profic
понимаешь, одно дело - распространять программу, чтобы ее можно было залить и работать.
и другое дело - с инструкцией "пойдите к хостеру и попросите у него то-то, а иначе - меняйте хостера".
Как ты думаешь, что сменит человек - хостера или программу?
 

neko

tеam neko
Фанат
вопрос в том насколько далеко ты пойдешь
ненастроенная локаль, это как правило означает что она также не настроена в базе например
еще есть с хостеры с очень старым пхп...

в данном случае это явно черезмерная независимость
и от хостера с отсутствием такое базовой функциональности стоит держаться подальше

tony2001
я буду очень рад если ты подашь пример
и каждому ламеру которые лезет в каждый топик с подобными советами, тем самым сбивая с толку спрашивающего, будешь подробно и вежливо аргументировать его полное непонимание проблемы
твой пример, в таком случае, станет показательным для многих
 

tony2001

TeaM PHPClub
neko
приятно, конечно, когда разговор переводят на твою персону, но тут это явно не в тему.
"брысь" и иже с ним за мной не водятся, так что смело равняйся на меня.
 

Фанат

oncle terrible
Команда форума
neko, ты ошибочно выбрал человека, с которого нужно требровать примеры.
его примеров хватит на десятерых.
К тому же модератор форума не должен отчитываться перед посетителями за замечания.
Давай ты все-таки примеш к сведению и проблема будет исчерпана? Даже мне приходится так поступать.

-~{}~ 20.12.04 21:10:

neko, написать в реквайрементс 4.3+ проще, чем еще описывать локали.
Понимаешь, отсутствие локали - это факт. И твои правильные теории ничеть его не поколеблют
 

Profic

just Profic (PHP5 BetaTeam)
Фанат
я все же за локали.
ведь никто не знает какой текст будет в результате через скрипт прогоняться. может это вообще будет текст на арабском. и что с ним сделает эта функция? а я обычно настройку локали выношу в конфиг. т.е. пользователь один раз сменит локаль и всё у него заработает (причем не только lower/upper, но и ctype, реги, number_format и т.п.) и не придется ему искать ту функцию (а исходники еще могут быть зашифрованы), которая корежит его текст.

когда скрипт пишется для себя, то тут как бы извращайся как хочешь - лишь бы работало :)
 

neko

tеam neko
есть 1001 причин почему могут не работать распространяемые скрипты у не слишком технически подкованного хостера....

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

единственное что обязательно нужно делать, так это проверочный скрипт который будет удостовериваться что присутствует все, что нужно для работы основных
 
Сверху