$msg = "<body><a>áéíóú☻♥♦♣</a></body>";
$temp_dom = new DOMDocument();
$temp_dom->loadHTML($msg);
$dom_xpath = new DOMXpath($temp_dom);
$ele = $dom_xpath->query('//a')->item(0);
echo "<pre>";
echo "Original: $msg\n";
echo $ele->nodeValue;
echo "</pre>";
の多くは、出力[?]:XPathエンコーディングの問題を伴うDOMDocument。テスト
Original: áéíóú☻♥♦♣
áéÃóúâ»â¥â¦â£
現在のドキュメントのエンコーディングはUTF-8です。 ANSIも試しましたが、同じ問題が発生しました。
utf8_decodeは問題
echo utf8_decode($ele->nodeValue);
を解決しかし、事は、私は、属性の多くと私はそれらの一つ一つにutf8_decodeを使用しなければならない多くの機能を使用して、私はそれがないと信じています正しいことをする。 誰かがこれをどうやって行うことができるか知っていますか?
私はすでに多くのことを試したので、結果を投稿する前にこのテストを使用してテストしてください。
は事前にありがとうございました。
[php:私がUTF-8を書くときはいつでもDomDocumentを使って16進表記を書くことができます](http://stackoverflow.com/questions/3575109/php-using-domdocument-whenever-i-試し書きするにはutf-8-it-writes-the-hexadecimal-n) – Gordon