Problem beim String vergleichen
philippo
- php
0 Tobias Kloth0 Eternius
Hallo,
ich habe folgende (XML) Datei:
<?xml version="1.0" ?>
Und folgenden PHP Code:
<?php
$data_file = file ('../database/news.xml');
$data_count = count ($data_file);
if ($data_file[4] == 'top') 7 echo 'ja'; }
?>
Nun leider funktioniert das ganze nicht. Ich möchte nicht den PHP XML parser verwenden, da es zu aufwenig wäre bei der kleinen Datenmenge. Aber die Strings sind glich, doch der Vergleich sagt mir NEIN! Warum ????
Gruß
Philipp
Hallo Philippo,
if ($data_file[4] == 'top') 7 echo 'ja'; }
dann lass dir doch mal $data_file[4] ausgeben - da dürfte dann etwa '<sparte>top</sparte>' drinstehen (ggf. noch trim() auf $data_file[4] anwenden) - warum sollte nur 'top' drinstehen? (außerdem sollte die 7 wohl eine Klammer sein)
Nun leider funktioniert das ganze nicht. Ich möchte nicht den PHP XML parser verwenden,
warum nicht? so wie du es jetzt machst, bist du darauf angewiesen, dass alles in der richtigen Zeile steht...
Grüße aus Nürnberg
Tobias
Hallo,
<?xml version="1.0" ?>
- <fcgservice>
- <news>
<id>article_1</id>
<sparte>top</sparte>
<datum>21.05.2004</datum>
<img />
<titel>sich_durch</titel>
<msg>Hier_kommt_der_welt</msg>
</news>- <news>
<id>article_2</id>
<sparte>presse</sparte>
<datum>21.05.2004</datum>
<img />
<titel>sich_durch</titel>
<msg>Hier_kommt_der_welt</msg>
</news>
</fcgservice>Und folgenden PHP Code:
<?php
$data_file = file ('../database/news.xml');
$data_count = count ($data_file);if ($data_file[4] == 'top') 7 echo 'ja'; }
?>
Soweit ich richtig zählen kann steht in $data_file[4]=="<sparte>top</sparte>"."\n",
falls du windows verwendest stehen am ende zwei steuerzeichen.
versuch mal die funktion chomp().
gruss