sniffysko
Новичок
PHP + UNICODE + UTF-8 как преобразовать
Нужно преобразовать в скрипте строку из кодировки windows-1251 в Unicode.
В мануале по ПХП в качестве юникодовой кодировки упоминается UTF-8. По идее для этого надо сделать примерно так:
Готовый файл используется другой программой (Adobe Indesign). Которая для работы требует этот самый юникодовый текст. Но файл сгенерированный этим скриптом программа не принимает как Юникод. И если из индизайна экспортнуть строку и сверить содержимое файлов, то получается, что юникоды у них разные.
Например:
Строка "<UNICODE-WIN>"
В трактовке индизайна выглядит так:
3C 00 55 00 4E 00 49 00 43 00 4F 00 44 00 45 00 ....
А в трактовке скрипта так:
3С 55 4E 49 43 4F 44 45 2D 57 49 4E 3E 0D 0A 3C ....
Значит UTF-8 это не юникод? Или юникодов несколько? И как сгенерировать текст в "правильном" юникоде?
Нужно преобразовать в скрипте строку из кодировки windows-1251 в Unicode.
В мануале по ПХП в качестве юникодовой кодировки упоминается UTF-8. По идее для этого надо сделать примерно так:
PHP:
$hdr = fopen('d:/res.txt', "w");
$hdrsrc = fopen('d:/srs.txt', 'r');
while($str = fgets($hdrsrc)){
fwrite($hdr, iconv('Windows-1251', 'UTF-8', $str));
}
Например:
Строка "<UNICODE-WIN>"
В трактовке индизайна выглядит так:
3C 00 55 00 4E 00 49 00 43 00 4F 00 44 00 45 00 ....
А в трактовке скрипта так:
3С 55 4E 49 43 4F 44 45 2D 57 49 4E 3E 0D 0A 3C ....
Значит UTF-8 это не юникод? Или юникодов несколько? И как сгенерировать текст в "правильном" юникоде?