Autor | Zpráva | ||
---|---|---|---|
zezula Profil |
#1 · Zasláno: 18. 12. 2015, 17:37:10
Zdravím, mám tento kod a při parsovaní <title> z některých webů (viz třeba ahold.cz) špatně zobrazuje diakritiku. Zkoušel jsem i měnit kódování, ale bez výsledku. Kde je chyba? Díky za každou radu
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>čeština</title> </head> <body> <?php function file_get_contents_curl($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); $data = curl_exec($ch); curl_close($ch); return $data; } $html = file_get_contents_curl("http://ahold.cz/"); //parsing begins here: $doc = new DOMDocument(); @$doc->loadHTML($html); $nodes = $doc->getElementsByTagName('title'); //get and display what you need: $title = $nodes->item(0)->nodeValue; $metas = $doc->getElementsByTagName('meta'); echo "Title: $title". '<br/><br/>'; ?> </body> </head> |
||
juriad Profil |
#2 · Zasláno: 18. 12. 2015, 17:47:29
zezula:
Mně to funguje správně. Chybu tam nevidím. Stránku servíruješ jako UTF-8, ahold má také stránku v UTF-8, žádné konverze nejsou nutné. |
||
Dan Charousek Profil |
#3 · Zasláno: 18. 12. 2015, 17:52:32
zezula:
Zkus echo "Title: " . utf8_decode($title) . "<br/><br/>";
|
||
zezula Profil |
#4 · Zasláno: 18. 12. 2015, 18:03:11
juriad:
nefungovalo mi to na lokálním serveru, po nahrátí na web už je to ok. Díky a omlouvám se za "zbytečné" téma |
||
Časová prodleva: 9 let
|
0