Как не конвертировать определенные символы с помощью htmlentities ()? - PullRequest
0 голосов
/ 18 января 2012

Как я могу «попросить» htmlentities() не преобразовывать определенные символы?Например,

php,

<?php echo htmlentities(file_get_contents('fonts.css'),ENT_QUOTES);?>

fonts.css,

@font-face {
    font-family: 'ChunkFiveRoman';
    src: url('chunkfive-webfont.eot'); /* EOT file for IE */
    src: local('☺'), url('chunkfive-webfont.ttf') format('truetype'); /* TTF file for CSS3 browsers */
}

результат,

@font-face {
    font-family: 'ChunkFiveRoman';
    src: url('chunkfive-webfont.eot'); /* EOT file for IE */
    src: local('�'), url('chunkfive-webfont.ttf') format('truetype'); /* TTF file for CSS3 browsers */
}

Я хочу сохранить '☺'как есть, но не для преобразования в' â�º '.

Возможно ли это?

1 Ответ

2 голосов
/ 18 января 2012

Используйте третий параметр htmlentities.Он определяет кодировку:

<?php echo htmlentities(file_get_contents('fonts.css'),ENT_QUOTES,"UTF-8");?>

Это позволяет избежать преобразования смайлика в латинские байтовые эквиваленты.(Вот как это выглядит.)

...