<?php
mb_internal_encoding('UTF-8');
mb_language('uni');
$a=file_get_contents("http://www.ciao.de/Erfahrungsberichte/8x4_Wild_Flower_Deo_Spray__8937431");
preg_match('/dass auf dem Versch(.*)ziehen mich/Us',$a,$b);
$b=$b[1];
echo $b."\n";
echo utf8_encode($b)."\n";
echo mb_convert_encoding($b,'UTF-8','iso-8859-1')."\n";
结果是
lussdeckel riesengro▒ und un▒bersehbar glitzernd ein ▒New▒ prangt. Neue Produkte
lussdeckel riesengroß und unübersehbar glitzernd ein �New� prangt. Neue Produkte
lussdeckel riesengroß und unübersehbar glitzernd ein �New� prangt. Neue Produkte
HTTP 源代码在元标记中建议使用“iso-8859-1”。德语变音符号很好,但为什么“新”周围的引号没有正确转换?在 PHP手册 中有一个函数 fix_latin。使用此功能时,引号也正确转换!?
PS:欧洲货币符号 € (EUR) 也是如此 - 它也被转换错误(除了 fix_latin 函数),但为什么呢?