Web ページ (自分のものではない) を取得するとき。XPath は奇妙な文字を返します。使用時
iconv("UTF-8","ISO-8859-1",$xpath_results->item(0)->nodeValue)
大丈夫だよー。ただし、毎回これを行う必要があるのはあまりきれいではありません。返される html は次のようになります。
Week 26 Huiswerkklas hele week aanvang 13.30 uur Dinsdag 26 juni Vergadering Feetcommissie 10.00 uur Lok.9
エクスポートするたびに行うのではなく、Web ページの読み込み時に正しいエンコーディングを設定するにはどうすればよいですか。
同様の質問を見ると、次のことを試しました。
$uitval_document->loadHTML('<?xml encoding="UTF-8">'.file_get_contents(BASE_URL_uitval68.$value->getAttribute('href')));
もちろん、それはHTMLであり、取得しているXMLではないため、うまくいきませんでした。HTML では、エンコーディングは head タグに入ります。したがって、HTML をロードして headtag に追加し、正しいエンコーディングで再ロードすることが可能です。しかし、それはあまり効率的ではなく、非常にハックです。皆さんはより良い解決策を知っていますか?