Reputation: 3687
Is there a php function to handle the encodings below?
.replaceAll("\u00c3\u0080", "À")
.replaceAll("\u00c3\u0081", "Á")
.replaceAll("\u00c3\u0082", "Â")
.replaceAll("\u00c3\u0083", "Ã")
.replaceAll("\u00c3\u0084", "Ä")
.replaceAll("\u00c3\u0085", "Å")
.replaceAll("\u00c3\u0086", "Æ")
.replaceAll("\u00c3\u00a0", "à")
.replaceAll("\u00c3\u00a1", "á")
.replaceAll("\u00c3\u00a2", "â")
.replaceAll("\u00c3\u00a3", "ã")
.replaceAll("\u00c3\u00a4", "ä")
.replaceAll("\u00c3\u00a5", "å")
.replaceAll("\u00c3\u00a6", "æ")
.replaceAll("\u00c3\u0087", "Ç")
.replaceAll("\u00c3\u00a7", "ç")
.replaceAll("\u00c3\u0090", "Ð")
.replaceAll("\u00c3\u00b0", "ð")
.replaceAll("\u00c3\u0088", "È")
.replaceAll("\u00c3\u0089", "É")
.replaceAll("\u00c3\u008a", "Ê")
.replaceAll("\u00c3\u008b", "Ë")
.replaceAll("\u00c3\u00a8", "è")
.replaceAll("\u00c3\u00a9", "é")
.replaceAll("\u00c3\u00aa", "ê")
.replaceAll("\u00c3\u00ab", "ë")
.replaceAll("\u00c3\u008c", "Ì")
.replaceAll("\u00c3\u008d", "Í")
.replaceAll("\u00c3\u008e", "Î")
.replaceAll("\u00c3\u008f", "Ï")
.replaceAll("\u00c3\u00ac", "ì")
.replaceAll("\u00c3\u00ad", "í")
.replaceAll("\u00c3\u00ae", "î")
.replaceAll("\u00c3\u00af", "ï")
.replaceAll("\u00c3\u0091", "Ñ")
.replaceAll("\u00c3\u00b1", "ñ")
.replaceAll("\u00c3\u0092", "Ò")
.replaceAll("\u00c3\u0093", "Ó")
.replaceAll("\u00c3\u0094", "Ô")
.replaceAll("\u00c3\u0095", "Õ")
.replaceAll("\u00c3\u0096", "Ö")
.replaceAll("\u00c3\u0098", "Ø")
.replaceAll("\u00c5\u0092", "Œ")
.replaceAll("\u00c3\u00b2", "ò")
.replaceAll("\u00c3\u00b3", "ó")
.replaceAll("\u00c3\u00b4", "ô")
.replaceAll("\u00c3\u00b5", "õ")
.replaceAll("\u00c3\u00b6", "ö")
.replaceAll("\u00c3\u00b8", "ø")
.replaceAll("\u00c5\u0093", "œ")
.replaceAll("\u00c3\u0099", "Ù")
.replaceAll("\u00c3\u009a", "Ú")
.replaceAll("\u00c3\u009b", "Û")
.replaceAll("\u00c3\u009c", "Ü")
.replaceAll("\u00c3\u00b9", "ù")
.replaceAll("\u00c3\u00ba", "ú")
.replaceAll("\u00c3\u00bb", "û")
.replaceAll("\u00c3\u00bc", "ü")
.replaceAll("\u00c3\u009d", "Ý")
.replaceAll("\u00c5\u00b8", "Ÿ")
.replaceAll("\u00c3\u00bd", "ý")
.replaceAll("\u00c3\u00bf", "ÿ");
Upvotes: 11
Views: 37304
Reputation: 10526
I found this to be interesting, where the previous answer was not working :
function jsonRemoveUnicodeSequences($struct) {
return preg_replace("/\\\\u([a-f0-9]{4})/e", "iconv('UCS-4LE','UTF-8',pack('V', hexdec('U$1')))", json_encode($struct));
}
I found it here : http://www.avoid.org/replace-u-characters-in-json-string/
Upvotes: 4
Reputation: 526543
Try mb_convert_encoding()
with the "to" encoding as 'HTML-ENTITIES'
, and (if necessary) the "from" encoding set to 'UTF-8'
or whichever Unicode encoding you're using.
Upvotes: 17