Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [XML] DOM i SimpleXML, rss interii mnie załamuje
taktu
post
Post #1





Grupa: Zarejestrowani
Postów: 89
Pomógł: 7
Dołączył: 19.05.2008

Ostrzeżenie: (0%)
-----


Pytanie: jak dobrać się do pliku rss który publikuje interia?

plik: http://kanaly.rss.interia.pl/turystyka.xml

problem: kodowanie pliku to UTF-8, ale znalazły się w nim słowackie znaki które w UTF już niestety nie są.

Do tej pory używałem:

  1. $rssObject = simplexml_load_string( $address, 'SimpleXMLElement', LIBXML_NOCDATA );


Co dało błędy:
  1. Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : Start tag expected, '<' not found in
  2. Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in


Więc spróbowałem:

  1. $xmlDoc = new DOMDocument();
  2. $xmlDoc->load( $address );


No i błąd:

  1. Warning: DOMDocument::load() [function.DOMDocument-load]: Input is not proper UTF-8, indicate encoding ! Bytes: 0xB9 0x69 0x6E 0x73 in http://kanaly.rss.interia.pl/turystyka.xml, line: 94 in


Błąd ominąłem w simplexml_load_string:
  1.  
  2. $file = file_get_contents( $address );
  3.  
  4. $content = mb_convert_encoding( $content, 'UTF-8', mb_detect_encoding($content, 'UTF-8, ISO-8859-1', true));
  5. //lub
  6. $content = iconv( mb_detect_encoding($content, 'UTF-8, ISO-8859-1', true), 'UTF-8', $content );
  7. //efekt ten sam
  8.  
  9. if ($rssObject = simplexml_load_string( $content, 'SimpleXMLElement', LIBXML_NOCDATA ) ){
  10. // ...
  11. }

i otrzymałem
  1. ?šwiÄ?ta Bo??ego Narodzenia we W??oszech sÄ? obchodzone na wiele r?(IMG:style_emoticons/default/questionmark.gif) ?nych sposob??w


Czy ktoś ma większe doświadczenie w kodowaniach? Zależy mi na tym aby tekst był czytelny, słowackie znaki mogą być wykrzaczone. Wszelka pomoc mile widziana.

Ten post edytował taktu 26.12.2009, 19:30:21
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 23:47