Forum Webscript.Ru
Программирование => PHP => Тема начата: CL2004 от 29 Октября 2004, 14:04:51
-
В цикле я из базы выбираю записи($rub_m) и вывожу таким образом:
echo strtoupper($rub_m); ?>
В локальной версии все нормально работает, а в интернете пишет маленькими буквами. Почему?
-
потому, что русский язык не является "родным" для системы.
[p]setlocale[/p]
или, лично я бы на твоем месте написал собственную функцию перекодировки, в одну строчку.
-
Что-то прочитал и ни фигша не понял. Можешь с примером обьяснить по setlocale.
Или может быть обойтись функцией типа этого:
function up($str)
{
for($i=0; $i<=strlen($str); $i++)
{
switch $str[$i]
{
case "a":
$str[$i]=\'A\';
break;
case "b":
$str[$i]=\'B\';
break;
case "E":
$str[$i]=\'E\';
break;
............
}
}
return($str);
}
Или можна еще как-то?
-
http://php.spb.ru/php/tar.html
если и этого не поймешь, то больше ничем помочь не могу.
CL2004:
Или может быть обойтись функцией типа этого:
function up($str)
ты всерьез собрался писать такую функцию?
Я же сказал - функция нужна из одной строчки.
[p]strtr[/p]
-
CL2004:
case "a":
$str[$i]=\'A\';
break;
:-) Это материал для thephpwtf.com Там как раз недавно была тема про преобразование строки и про strtr().
-
НАсколько я помню есть такая штука
$tr=strtr("АБВГДЕЖЗИЙКЛМНОПРСТУфХЦЧШЩЪЫЬЭЮЯ",
"абвгдежзийклмнопрстуфхцчшщъыьэюя",$tr);