tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
409
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Asterix-Ac
    Asterix-Ac Asterix-Ac ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Aachen (NRW)
    Beiträge
    215
    Hi Community,

    ich suche schon sehr lange in Goooooogle. Alle Seiten zeigen den gleichen Fehler, doch keiner schreibt die Lösung hin
    Also : Immer, wenn ich
    PHP-Code:
    $elem = new SimpleXMLElement($xml); 
    einsetze, tritt folgende Warnung auf :
    PHP-Code:
    WarningSimpleXMLElement::__construct() [simplexmlelement.--construct]: Entityline 4parser error Start tag expected'<' not found in /pfad/zu/test.php on line 24 
    Vielleicht kann mir jemand mal erklären, warum der Parser-Fehler auftritt, denn die XML-Datei ist 100% XML-kompatibel :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    
    <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
    <persons>
        <person>
            <item vorname="Jupp" />
            <item name="Juppijupp" />
            <item strasse="Juppstr.5" />
            <item plz="12345" />
            <item ort="Jupphausen" />
            <item land="Deutschland" />
            <item tel="01234/56789" />
            <item alter="99" />
            <item sprachkenntnisse="Deutsch,Englisch" />
            <item eigenschaften="Tänzer,Strahlemann,Rennfahrer" />
        </person>
    </persons>

    Danke für Eure Hilfe,

    Asterix
     

  2. #2
    Avatar von saftmeister
    saftmeister saftmeister ist offline Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.521
    Zeig doch mal deinen PHP-Code, vllt. kann man dann helfen.

    EDIT: Jedenfalls funktioniert es so bei mir tadellos (auch mit deinem XML):

    Code php:
    1
    2
    3
    4
    5
    
    <?php
    $xml = file_get_contents('xmltest2.xml');
    $sxml = new SimpleXMLElement($xml);
     
    var_dump($sxml);

    EDIT2: Jetzt habe ich auch verstanden, was dein Problem ist: Du kannst nicht an den SimpleXMLElement-Konstruktor den Pfad zu einem XML-Dokument angeben, denn der Prototyp sieht so aus:

    Code :
    1
    
    public __construct ( string $data [, int $options = 0 [, bool $data_is_url = false [, string $ns = "" [, bool $is_prefix = false ]]]] );

    Das bedeutet, du darfst nur eine Zeichenketten übergeben, die den Inhalt des XML-Dokument einthält. Schön, dass dein Problem damit gelöst ist.
    Geändert von saftmeister (04.12.11 um 11:29 Uhr)
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  3. #3
    Avatar von Asterix-Ac
    Asterix-Ac Asterix-Ac ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Aachen (NRW)
    Beiträge
    215
    Hallo Saftmeister,

    Danke für Deine Antwort.
    PHP-Code:
    $xml file_get_contents($path); 
    Das war die Lösung. Warum ich darauf nicht schon eher gekommen bin

    Asterix
     

Ähnliche Themen

  1. Not known Entity
    Von Looky im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 3
    Letzter Beitrag: 19.10.10, 19:45
  2. Antworten: 10
    Letzter Beitrag: 17.03.08, 16:16
  3. SimpleXML Fehler
    Von Knoppers im Forum PHP
    Antworten: 3
    Letzter Beitrag: 24.01.08, 20:58
  4. Entity
    Von son gohan im Forum PHP
    Antworten: 8
    Letzter Beitrag: 07.02.06, 15:39
  5. Parser-Fehler (Klassen-Assistent)
    Von kerian im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 29.09.03, 07:31

Stichworte