Конференции:  3D графика Delphi Игры Бизнес Потрепаться PHP&MySQL QuarkXPress Turbo Pascal WEB-дизайн 
<<<    Конференция "PHP&MySQL"   >>>
Щукин [2010-12-01 03:52:48]
Перевод win-1251 в utf8 (unicode)
Добрый день.
Кто знает как перевести кириллицу в юникод на php?
utf8_encode() делает какую-то абракадабру

ai [2010-12-05 15:49:25]    [1]
Функция utf8_encode() конвертирует iso, а не win1251

SomeOne [2011-03-01 14:06:27]    [2]
Добавить изображение

rastaman [2011-03-01 14:20:54]    [3]
Вот эта вещь перекодировывает. Правда с украинскими некоторыми буквами пока плёховато.

function cp1251_to_utf8 ($txt)  {
   $in_arr = array (
       chr(208), chr(192), chr(193), chr(194),
       chr(195), chr(196), chr(197), chr(168),
       chr(198), chr(199), chr(200), chr(201),
       chr(202), chr(203), chr(204), chr(205),
       chr(206), chr(207), chr(209), chr(210),
       chr(211), chr(212), chr(213), chr(214),
       chr(215), chr(216), chr(217), chr(218),
       chr(219), chr(220), chr(221), chr(222),
       chr(223), chr(224), chr(225), chr(226),
       chr(227), chr(228), chr(229), chr(184),
       chr(230), chr(231), chr(232), chr(233),
       chr(234), chr(235), chr(236), chr(237),
       chr(238), chr(239), chr(240), chr(241),
       chr(242), chr(243), chr(244), chr(245),
       chr(246), chr(247), chr(248), chr(249),
       chr(250), chr(251), chr(252), chr(253),
       chr(254), chr(255), chr(170), chr(186), chr(434), chr(435), chr(431), chr(447)
   );  

   $out_arr = array (
       chr(208).chr(160), chr(208).chr(144), chr(208).chr(145),
       chr(208).chr(146), chr(208).chr(147), chr(208).chr(148),
       chr(208).chr(149), chr(208).chr(129), chr(208).chr(150),
       chr(208).chr(151), chr(208).chr(152), chr(208).chr(153),
       chr(208).chr(154), chr(208).chr(155), chr(208).chr(156),
       chr(208).chr(157), chr(208).chr(158), chr(208).chr(159),
       chr(208).chr(161), chr(208).chr(162), chr(208).chr(163),
       chr(208).chr(164), chr(208).chr(165), chr(208).chr(166),
       chr(208).chr(167), chr(208).chr(168), chr(208).chr(169),
       chr(208).chr(170), chr(208).chr(171), chr(208).chr(172),
       chr(208).chr(173), chr(208).chr(174), chr(208).chr(175),
       chr(208).chr(176), chr(208).chr(177), chr(208).chr(178),
       chr(208).chr(179), chr(208).chr(180), chr(208).chr(181),
       chr(209).chr(145), chr(208).chr(182), chr(208).chr(183),
       chr(208).chr(184), chr(208).chr(185), chr(208).chr(186),
       chr(208).chr(187), chr(208).chr(188), chr(208).chr(189),
       chr(208).chr(190), chr(208).chr(191), chr(209).chr(128),
       chr(209).chr(129), chr(209).chr(130), chr(209).chr(131),
       chr(209).chr(132), chr(209).chr(133), chr(209).chr(134),
       chr(209).chr(135), chr(209).chr(136), chr(209).chr(137),
       chr(209).chr(138), chr(209).chr(139), chr(209).chr(140),
       chr(209).chr(141), chr(209).chr(142), chr(209).chr(143),
       chr(209).chr(148), chr(209).chr(404), chr(209).chr(150),
       chr(209).chr(406), chr(209).chr(151), chr(209).chr(407)
   );  

   //$txt = str_replace($in_arr,$out_arr,$txt);
   $txtNew='';
   for($C=0;$C<StrLen($txt);$C++){
   If(In_Array($txt[$C],$in_arr)){
   $txtNew.=$out_arr[Array_Search($txt[$C],$in_arr)];
   }Else{
   $txtNew.=Utf8_Encode($txt[$C]);
   }
   
   
   }
   //return $txt;
   return $txtNew;
}


ПОДПИСАТЬСЯ НА ТЕМУ

E-mail
7+8?



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


Ваше имя: 
     Осталось: 

 

Допускается форматирование текста:
[•B]полужирный[B•] [•I]наклонный[I•] [•U]подчеркнутый[U•] [•‹]URL картинки[›•].
Для кода программ используйте [•¤] код программы [¤•]
Количество открывающих и закрывающих тэгов форматирования текста должно быть равным, иначе форматирование не осуществится.


Adelavida Link       Рейтинг@Mail.ru