Anzeige:
Ergebnis 1 bis 6 von 6

Thema: **DOM**->loadXML(); schwaetzt auf stdout

  1. #1
    herweb
    Gast

    **DOM**->loadXML(); schwaetzt auf stdout

    Hallo,

    ich habe da so ein Problem mit

    php **DOM**->loadXML( '<aaa>bbb</aaa>' );

    Ich bin auf PHP 5, mit fast_cgi, mit DOM XML 6.2.

    Eigentlich ganz einfach. Leider kopiert sich der Text mitten hinein in den anderen <html>text</html> der da noch ist, auf meiner Seite. Also das ***->loadXML( '<aaa>bbb</aaa>' ); erzeugt immer eine Kopie auf STDOUT, genauer:

    <aaa>bbb</aaa>

    mitten hinein, gerade da, wo es aufgerufen wird. Ich habe schon probiert mit ob_start(), ob_clean() etc das Zeug zu bunkern und wegzuwerfen. Das error_reporting() ist auch abgestellt. Das klappt alles nicht. Die anderen DOMtom tun ganz gut, die Ergebnisse zu dem speziellen XML sind ansonsten richtig.

    Hat da wer eine Idee wie man dem **DOM**->loadXML() das STDOUT abgewoehnt?

    Gruss

  2. #2
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Also ich kann deine Beschreibung nicht ganz nach vollziehen.
    Etwas Code würde mehr aussage schaffen.
    Im grunde erzeugt $dom->loadXML( $STRING ); keine Ausgabe.
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  3. #3
    herweb
    Gast

    **DOM**->loadXML( '<aaa>bbb</aaa>' );

    Hallo,

    ich habe das problem reduziert auf dieses ->loadXML();

    Es geschieht wirklich innerhalb des ->loadXML(); Das zu untersuchende XML wird als Kopie auf STDOUT kopiert uns stoert.

    Es gibt sonst kein print() in dem prg. Irgendwo gibt es bestimmt einen Schalter, wie
    libxml_use_internal_errors( true );
    oder so, den ich aber noch nicht entdeckt habe.
    Gruss

  4. #4
    Registrierter Benutzer
    Registriert seit
    15.10.2005
    Ort
    Franken
    Beiträge
    362
    STDOUT? Wir reden hier schon von PHP? Das kenne ich nämlich nur von Smalltalk.
    Dank der Rekursion kann ich IF-Schleifen bauen.

    In neuem Glanz: www.turbohummel.de

  5. #5
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Zitat Zitat von Turbohummel Beitrag anzeigen
    STDOUT? Wir reden hier schon von PHP? Das kenne ich nämlich nur von Smalltalk.
    Für PHPprogger etwas unbekannt aber durchaus geläufiger Ausdruck
    stdin (0)
    Der Eingabe-Kanal, ist normalerweise verbunden mit dem Terminal, d.h.
    Eingaben ueber Tastatur können vom Prozeß von hier gelesen werden.

    stdout (1)
    Der Ausgabe-Kanal. Alle normalen Ausgaben, z.B. mit printf in C oder echo von einer Shell
    aus werden hier ausgegeben. Dieser Kanal ist normalerweise mit dem Terminal verbunden,
    d.h. die Ausgaben landen auf dem Bildschirm.

    stderr (2)
    Der Fehler-Ausgabe-Kanal. Alle Fehlermeldungen werden hier rausgeschrieben.
    Dieser Kanal ist standardmäßig mit dem gleichen Device wie stdout verbunden,
    d.h. auch diese Ausgaben landen auf dem Terminal.
    Der Vorteil der Trennung liegt jedoch darin, daß z.B. bei Umlenkung der Ausgabe
    eines Prozesses die Fehlermeldungen trotzdem am Terminal zu lesen sind bzw.
    diese nicht die Datei verschandeln.
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  6. #6
    herweb
    Gast

    php **DOM**->loadXML( '<aaa>bbb</aaa>' );

    Hallo,
    sorry,

    die Angelegenheit hat sich erledigt. Es war nicht das loadXML(), sondern das

    require('wzegfz.XML')

    eine Zeile darueber. Da der dateiname *.XML lautet, hat das php ein include/printf() daraus gemacht.

    Gruss

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •