나는 웹 페이지에서 일부 데이터를 긁어해야합니다. 그러나 나는 그것을 몇 가지 인코딩 문제가있다. 여기PHP DOMXPath 인코딩
는 잘 알려진 독일어 웹 페이지에서 문제를 보여 다만 저 작은 샘플 코드입니다.
나는 웹 페이지에서이 텍스트를 얻을 것으로 예상 : VFL의 안쪽에서 바깥 강력한 설정 때문에모든 비판은 볼프스부르크에 모습을 뻗어있다. 쾰른은 자신의 이익을 그릴 수 있습니까? 내 테스트에서 볼 수
는하지만,이 얻을 : VFL 적극적으로 거꾸로되었다 때문에
모든 비평가는 볼프스부르크에 모습을 뻗어있다. Kölner은 자신의 이익을 그릴 수 있습니까?
페이지의 메타 태그는 말한다, 그것은 UTF-8했다, 그것은 ... 그래서
UTF-8로 인코딩되고 mb_detect_encoding 말한다했다.
하지만이 엉터리 텍스트를 다시받을 이유는 무엇입니까?
내가 ISO 8859-1에 텍스트를 변환 할 때 내가 예상 결과를 얻을 ...
<?php
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';
$url = "http://www.goal.com/de/match/60952/wolfsburg-vs-1-fc-k%C3%B6ln/preview";
$fileContent = @file_get_contents($url);
$dom = @DOMDocument::loadHTML($fileContent);
$xpath = new DOMXpath($dom);
$element = $xpath->query(".//*[@id='article_headline']/h2");
if ($element->length > 0) {
$item = $element->item(0);
$text = $item->textContent;
echo $text . "<br>";
$text = iconv("UTF-8", 'ISO-8859-1', $text);
echo $text . "<br>";
}
?>
덕분에, 그게 내가 찾던입니다 :) – Urkman