php - XML parser - umlaute

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • php - XML parser - umlaute

    Guten tag leute!

    habe mal den xml parser von

    http://de.php.net/xml

    versucht

    geht super für meine zwcke nur das problem:

    die Umlaute und so werden in komischen zeichen angezeigt..

    kann mir wer helfen oder tipps geben?

  • #2
    steht doch alles dort ... oder irre ich mich da?

    Character Encoding

    PHP's XML extension supports the Unicode character set through different character encodings. There are two types of character encodings, source encoding and target encoding. PHP's internal representation of the document is always encoded with UTF-8.

    Source encoding is done when an XML document is parsed. Upon creating an XML parser, a source encoding can be specified (this encoding can not be changed later in the XML parser's lifetime). The supported source encodings are ISO-8859-1, US-ASCII and UTF-8. The former two are single-byte encodings, which means that each character is represented by a single byte. UTF-8 can encode characters composed by a variable number of bits (up to 21) in one to four bytes. The default source encoding used by PHP is ISO-8859-1.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Original geschrieben von Abraxax
      steht doch alles dort ... oder irre ich mich da?
      ok also bedeudet das ich kann es vergessen den egal was ich nehme nichts geht richtig.,.

      Kommentar


      • #4
        schön - ich habe genau gerade das gleiche problem:
        habs jetzt auch schon mit verschiedenen klassen versucht - benutze jetzt grad simplexml das ist aufs wesentliche beschränkt :P

        das steht doch das der typ aus dem document übernommen wird oder? das heißt wenn das dokument das richtige encoding hat dann sollte das doch gehen oder?
        das heißt wenn man (z.b. bei einem rss)
        Code:
        <rss version="2.0">
        hier noch den encoding einsetzt (in meinem fall iso-8859-1) dann sollte es doch gehen oder?
        EDIT:
        ich sehe grade das das encoding (<?xml version="1.0" encoding="iso-8859-1"?>) schon drin steh.... hmm - hat jemand sonst ne idee?
        Zuletzt geändert von tontechniker; 14.03.2006, 20:16.
        Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

        Kommentar


        • #5
          Wenn es euch um das Parsen von RSS-Feeds geht kann ich euch folgendes empfehlen, hat bei mir wunderbar funktioniert:

          http://magpierss.sourceforge.net/

          Liest fast alle(!) RSS-Typen automatisch aus, Umlaute funktioniert auch alles perfekt. Installation ist ziemlich einfach und wird dort auf der Seite bzw. im README detailliert erklärt.
          Ein Beispiel :

          PHP-Code:
          <?php
          require_once 'lib/magpierss/rss_fetch.inc';
          $url 'http://domain.de/feed';
          $rss fetch_rss($url);
          //echo "Channel: ".$rss->channel['title']."<br />";
          $anz_news 10;
          for (
          $i 0$i $anz_news$i++) {
              echo 
          "<a href='".$rss->items[$i]['link']."'>".$rss->items[$i]['title']."</a> +++ "
          }
          echo 
          "<a href='http://domain.de' title=''>mehr...</a>";
          // echo "<br /><br /><br />"; print_r("<pre>".$rss."</pre>");
          ?>
          Hab auch mal XML-Line getestet, mit dem man auch alle möglichen XMLs einfach parsen kann, dürfte aber nicht mehr ganz so aktuell sein: http://www.media-palette.de/tools/xml-line/ Die Seite ist aber gut, da gibts noch viel Tips.

          Kommentar


          • #6
            ok also bedeudet das ich kann es vergessen den egal was ich nehme nichts geht richtig.,.
            Hm. Lies vielleicht nochmal genauer nach was da steht.

            Du solltest mal Versuchen mit UFT-8 zu arbeiten, dann geht das.

            Ich habe alle meine Projekte mit UTF-8 und keine Probleme mit Umlauten usw.

            Es gibt einige Nette Tutorials wie man seine Seite auf UTF-8 umstellt, und falls man das nicht will gibts in PHP noch die utf8_encode() und utf8_decode() Funktionen mit denen du UTF-8 Strings zurück auf iso-8859-1 bekommst und umgekehrt.

            In der XML Datei solltets du <?xml version="1.0" encoding="utf-8"?> verwenden.

            Gruß Sono

            Kommentar

            Lädt...
            X