2015-06-08 3 views
0

У меня есть строка из MySql DB, закодированная в utf8mb4. Я рендеринга PDF с FPDF для PHP, и я попытался преобразовать его с Iconv:FPDF с iconv от utf8mb4

iconv('utf8mb4', 'cp1252',$myString); 

Это не может говорить мне «Примечание: Iconv(): Неправильный набор символов, преобразование из utf8mb4' to cp1252' не допускается». Если я пытаюсь с

iconv('utf-8', 'cp1252',$myString); 

я получаю «Примечание: Iconv(): Обнаружен недопустимый символ в строке ввода».

Без значка Я получаю несколько символов ascii вместо специальных символов, и это не нормально.

Есть ли способ правильно вывести это значение?

+0

Похоже, вы пропустите '' 'after' utf8' – AbcAeffchen

+0

Опечатка отсутствует в исходном коде - исправлено под вопросом – Nillus

+0

Я думаю, что это может быть полезно http://stackoverflow.com/questions/16893035/using- utf8mb4-with-php-and-mysql – geggleto

ответ

0

попробовать это в игнор характер, который не допускается в кодировке

iconv('utf-8', 'cp1252//IGNORE',$myString); 
+0

Это просто прыгает «странными» символами, не представляет их правильно – Nillus

0

Я пытался, это did't работу. Я решил это, используя версию FPDF, которая позволяет utf8: TFPDF. Он полностью ретросоматичен, если вы добавите его новый шрифт (ttf).