我拥有的iconv代码,完美地工作于昨天。今天它突然在应该翻译的部分显示那些问号( )。
setlocale(LC_ALL, 'nl_NL');
$title = str_replace(' & ', ' & ', $feed[$x]['title']);
$title = (iconv('UTF-8', 'ISO-8859-1//TRANSLIT//IGNORE', $title));
$link = $feed[$x]['link'];
$description = $feed[$x]['desc'];
$description = (iconv('UTF-8', 'ISO-8859-1//TRANSLIT//IGNORE', $description));
$datedag = date('d', strtotime($feed[$x]['date']));
$datemaand = date('F', strtotime($feed[$x]['date']));
$datejaar = date('Y', strtotime($feed[$x]['date']));
echo '<div style="border:1px solid black;background-color:#d90000;"><p><strong><a href="'.$link.'" title="'.$title.'" target="_blank">'.$title.'</a></strong><br />';
echo '<small><em>Geplaatst op '.$datedag.' '.$datemaand.', '.$datejaar.'</em></small></p>';
echo '<p>'.$description.'</p></div><br />';
现在,我没有添加setlocale,直到问号出现,但没有成功。
问题:我做错了什么?
答案 0 :(得分:1)
由于我将PHP更新为5.6,因此编码错误。此版本将默认字符集设置为UTF-8并通过HTTP-Header传输,即使您在HTML元标记中将字符集设置为ISO-8859-1。
考虑使用UTF-8或通过在脚本开头包含以下行来取代默认字符集:
ini_set(default_charset, "");
您也可以更改php.ini
中的默认字符集。
答案 1 :(得分:0)