Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Модуль перекодировки


Автор: Flyzer 30.8.2005, 20:55
Есть скрипт на Java
Код

<script language="JavaScript">
<!--
azbuka = "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя";

function recode_text(str)
{
len = str.length;
for (ich=0; ich <= len-1; ich++) {
ch = str.substr(ich,1);
if (str.charCodeAt(ich) < 128) {
document.write(ch);
} else {
idx = azbuka.indexOf(ch);
if (idx >= 0 && idx < 64) {
code = 1040 + idx;
document.write("&amp;#" + code + ";");
} else if (ch == "Ё") {
document.write("&amp;#1025;");
} else if (ch == "ё") {
document.write("&amp;#1105;");
};
};
};
};
//-->
</script>


Если кому не влом переведите его плиз на ПЧП, по идее тут не сложно должно быть.
Он тип должен по идее перевести кракозябру вроде:
Код

&# 1055;&# 1088;&# 1086;&# 1074;&# 1077;&# 1088;&# 1082;&# 1072;

На русский...
Буду очень благодарен

Автор: Mal Hack 30.8.2005, 21:23
iconv();
А скорее всего ручками через ASCII символы.

Автор: -=Ustas=- 31.8.2005, 08:02
Цитата(Flyzer @ 30.8.2005, 20:55)
Есть скрипт на Java

Ты малость путаешь!

Автор: Flyzer 31.8.2005, 10:49
В общем всем спасибо, я уже сам всё сделал. ))) Ночку посидел и сделал. Там на самом деле не сложно было... Громоздко правда получилось но зато своими ручками)) smile

Автор: Bikutoru 31.8.2005, 10:55
Цитата
Есть скрипт на Java

Это не скрипт на Java, это код на JavaScript

Получаем коды всех русских букв
Код

<script type="text/javascript">
<!--
function unicodeValue(str, pos) 
{
    var res = str.charCodeAt(pos);
    while (res.length < 4)
        res = "0" + res;

    return res;
}

var alphabet = new String("АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя");
var symbol;
for(var k = 0; k < alphabet.length; k++) 
{
    document.write("&quot;" + unicodeValue(alphabet, k) + "&quot; => " + alphabet.charAt(k) + "&quot;,<BR>");
}

//-->
</Script>


И записываем их сюда
Код


function toRusLetters($string)
{
    $rus_letters = array (
    //Сюда вставить результат работы кода на JavaScript
    );

    foreach ($rus_letters as $code => $value)
        $string = str_replace("&#" . $code . ";", $value, $string);

    return $string;
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)