Это UTF8 а кодировать смотря что нужно вот для URL есть стандартная процедура http://ru2.php.net/manual/ru/function.urldecode.php
unicode либо из него происходящие(UTF-8, UTF-16, UTF-32), ты бы хоть ЯП указал для приличия... А для того чтоб в него кодировать нужно просто передать функции кодирования текст в этой кодировке, ты лучше глянь charset в сорце страницы, обычно там указана кодировка
Это не UTF-8, а UCS-2 ака виндовс юникод. Вроде он еще именуется UTF-16LE. Расшифровать можно джаваскриптом функцией unescape Быдло-код =) PHP: <?php function process ($n) { $n = dechex ($n); $n = str_repeat ('0', 4 - strlen ($n)) . $n; return '%u' . $n; } $str = iconv ('KOI8-R', 'UCS-2', 'Посмотри, тебе понравится'); echo implode ('', (array_map ('process', unpack ('S*', $str)))); ?> ЗЫ. Че-то наворотил я скобок. Наверно, можно и проще
Да, это UTF-8 видать... ЯП - php. Мне нужен алгоритм такого кодирования... Стандартная urlencode() кодирует по другому немного - там два символа после знака процента - а в этом случае - четыре.
попугай PHP: function utf_urlencode($str) { $str = iconv("utf-8", "cp1251", $str); $res = ""; for ($i = 0; $i < strlen($str); $i++) { $res .= "%u"; $a = iconv("cp1251", "ucs-2", $str[$i]); for ($j = 0; $j < strlen($a); $j++) { $n = dechex(ord($a[$j])); if (strlen($n) == 1) { $n = "0$n"; } $res .= $n; } } return $res; } echo utf_urlencode('Привет медвед');
другой вариан, попроще PHP: function utf16be_urlencode ($str) { $ret = ''; for ($i = 0; $i < mb_strlen ($str, 'UTF-16BE'); $i++) $ret .= '%u' .bin2hex (mb_substr ($str, $i, 1, 'UTF-16BE')); return $ret; } $str = iconv ('KOI8-R', 'UTF-16BE', 'Посмотри, тебе понравится'); echo utf16be_urlencode ($str), "\n";