htmlentities로 €를 얻습니다
-
03-07-2019 - |
문제
나는 htmlentities가 나에게주는 것을 보여 주려고 노력하고 있지만 & 유로를주지 않습니다. € 캐릭터를 위해.
나는 노력하고있다
echo htmlentities(htmlentities("LISBOA-VIENA DESDE 99€ TAXAS INCLUÍDAS, RESERVE JÁ",ENT_COMPAT,ISO-8859-1),ENT_COMPAT,ISO-8859-1);
echo '<br>';
echo htmlentities(htmlentities("LISBOA-VIENA DESDE 99€ TAXAS INCLUÍDAS, RESERVE JÁ",ENT_COMPAT,UTF-8),ENT_COMPAT,UTF-8);
그리고 둘 다 얻습니다
Lisboa-viena Desde 99 € taxas conclu & iacute; das, j & aacute;
Lisboa-viena Desde 99 € taxas conclu & iacute; das, j & aacute;
나는 결코 A & Euro를 얻지 못한다.
누구든지 이것을 올바르게 얻는 방법을 알고 있습니까?
해결책
이것은 논의됩니다 여기; € (€
) 자주 작동합니다.
다른 팁
이 문장을 사용하는 파일의 원본 파일 인코딩은 무엇입니까?
Windows에있는 경우 파일이 인코딩 될 가능성이 높습니다. Windows-1252 (CP1252) 및 안에 ISO-8859-1, ISO-8859-2 또는 UTF-8.
그만큼 €
사인입니다 0x80
Windows-1252에서 ISO-8859-15는 €
서명 0xA4
ISO-8859-1에는 a가 없습니다 €
서명답변을 참조하십시오 Aron Rotteveel에서). 문자열에 사용 된 올바른 숯을 전달해야합니다. htmlentities()
. 모범 사례는 모든 파일에 UTF-8 인코딩을 사용하는 것입니다.
만약에 htmlentities("LISBOA-VIENA DESDE 99€ TAXAS INCLUÍDAS, RESERVE JÁ",ENT_COMPAT,'Windows-1252')
WARK로서 CP1252 Charset을 사용하고 있습니다.
또한 위의 예에서 숯불 주위에 인용문이 없다는 것을 알았습니다. 이것은 또한 문제의 원인 일 수 있습니다.
사용 ISO-8859-15
대신에 ISO-8859-1
.
ISO-8859-15 (ISO Latin 9)
~와 다르다 ISO-8859-1 (ISO Latin 1)
유로 표시와 프랑스어 및 핀란드어가 누락됩니다. Latin-1 (ISO-8859-1)
.
echo htmlentities('Working htmlentities() now 99€ off!', ENT_COMPAT, 'ISO-8859-15');
돌아와야합니다
Working htmlentities() now 99€ off!