Problem mit explode()

MC-René

Erfahrenes Mitglied
Hallo!

Hab mal wieder n Prob mit explode:

In der Datei user.txt stehen 2 Datensätze:
Testuser||Rudi||Rummel||rummel@platz.de||OFM||0190/633633||0800/778899||01.07.2009||2||2||2||0||0||0||0||0
Administrator||Willi||Wichtig||rummel@platz.de||OFM||0190/633633||0800/778899||01.07.2009||2||2||2||0||0||0||0||0

aus der user.txt lese ich so:

Code:
$file=fopen ('user.txt','r');
while (!feof($file))
{
$eintrag=fgets($file);
...
dies ist der 1. erintrag der datei, lass ich mir mit
Code:
echo $eintrag
anzeigen:

Testuser||Rudi||Rummel||rummel@platz.de||OFM||0190/633633||0800/778899||01.07.2009||2||2||2||0||0||0||0||0

nun will ich mit explode() den string $eintrag teilen, mit '||' als trenner, sodass ich die werte in arrays habe und z.B. $eintrag[0] vergleichen kann: (hier vergleich $user mit $eintrag[0], wobei $user="Administrator" und die ausgabe (siehe unten gar nicht kommen sollte)

Code:
...
explode('||',$eintrag);
	if ($eintrag[0]!=$user) 
	{
	echo $user."<BR>";
	echo $eintrag[1]." ".$eintrag[2]."<BR>";
	echo $eintrag[3]."<BR>";
	echo $eintrag[4]."<BR>";
	echo $eintrag[5]."<BR>";
	echo "AT bis: ".$eintrag[6]."<BR>";
	echo $eintrag[7]."<BR>";
	echo $eintrag[8]."<BR>";
	echo $eintrag[9]."<BR>";
	echo $eintrag[10]."<BR>";
	echo $eintrag[11]."<BR>";
	echo $eintrag[12]."<BR>";
	echo $eintrag[13]."<BR>";
	echo $eintrag[14]."<BR>";
	echo $eintrag[15]."<BR>";
	break;}
}
echo "User ".$user." nicht gefunden!";

Aber wisst ihr ich bekomm folgendes angezeigt:

Testuser
e s
t
u
s
AT bis: e
r
|
|
R
u
d
i
|
|


und ich blicks einfach nicht!

Danke schonmal!

:rolleyes:
 
Entschuldige, aber die Funktion geht so:

$neues_array = explode($trennzeichen, $string);

Insofern müsstest du folgendes machen:
$eintrag2 = $eintrag;
$eintrag = explode('||',$eintrag2);

Dann ginge deine Abfrage. :p
 
Kleinen fehler hab ich gerad schon gef.:

(tut aber nichts zur sache)

Code:
if ($eintrag[0]!=$user)

sollte heissen:

Code:
if ($eintrag[0]==$user)

aber funktioniert noch nicht!


...:mad:
 
Der Code sieht etwas billig aus.

1. Wenn du schon explodest, dann würde ich die Strings in eine foreach Schleife nehmen und diese Werte nacheinander Bearbeiten/Ausgeben.
2. Oder per list() jeden Array Explode eine bestimmte Variable zuordnen.

In diesem Sinne
 
Zurück