Forum: PC-Programmierung PHP-Skript funktioniert nicht, verstehe nicht warum


von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Ich rufe aus einer Fritzbox das Telefonverzeichnis ab und erhalte es im 
XML-Format in einer Variablen namens $phonebook. Ich möchte den Inhalt 
ohne zusätzliche XML-Lib parsen, aber soweit komme ich garnicht.
1
echo($phonebook.'<hr>'); //alles da!
2
$records=explode('<contact>',$phonebook);
3
      
4
for ($i=0; $i<count($records);$i++)
5
{
6
   echo($i.' - '.$records[i].'<br>');
7
}

Warum sind die Ausgaben aus der Schleife leer? Ich erhalte nur die 
korrekte Anzahl von Zeilennummern und den Break, das $records[i] fehlt. 
Warum?

(auch in der Quelltext-Ansicht, ich weiss, dass Browser erkannte 
XML-Strukturen formatiern und interpretieren). Aber selbst, wenn ich 
alle spitzen Klammern per replace entferne, bleibt $records[i] leer ... 
:-(

: Bearbeitet durch User
von Felix Adam (Gast)


Lesenswert?

Probiere mal "var_dump($records)" nach "records=...

Und die Schleife erstmal auskommentieren. Wird was ausgegeben?

von Felix Adam (Gast)


Lesenswert?

Ah, vielleicht das Dollarzeichen hinzufügen in den []

echo($i.' - '.$records[$i].'<br>');

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Felix Adam schrieb:
> Ah, vielleicht das Dollarzeichen hinzufügen in den []
>
> echo($i.' - '.$records[$i].'<br>');

Mea culpa! Ja, danke ... manchmal sieht man den Wald ... usw. Danke!

von T.roll (Gast)


Lesenswert?

Frank E. schrieb:
> Ich möchte den Inhalt ohne zusätzliche XML-Lib parsen
PHP hat doch einen XML-Parser eingebaut, wozu eine extra Lib oder diese 
Basteleien?

http://php.net/manual/de/ref.xml.php

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Frank E. schrieb:
> manchmal sieht man den Wald

Deshalb gibt PHP da auch eine Warnung aus falls man diese beachtet... 
Für die lokale Entwicklung sollte man diese dann auch anzeigen und nicht 
nur ins log umleiten.

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Läubi .. schrieb:
> Frank E. schrieb:
>> manchmal sieht man den Wald
>
> Deshalb gibt PHP da auch eine Warnung aus falls man diese beachtet...
> Für die lokale Entwicklung sollte man diese dann auch anzeigen und nicht
> nur ins log umleiten.

Die Ausgabe der Fehlermeldung vom PHP war im NAS nach dem letzten Update 
deaktiviert - da bin ich aber erst nach einiger Zeit drauf gekommen. 
Sonst hätte ich das schon gemerkt ... aber es passierte (wie in 
Javascript) garnix. Habs nun neu eingestellt und läuft ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.