mein script macht was anders als in php manual beispiel

Alles, was PHP betrifft, kann hier besprochen werden.

mein script macht was anders als in php manual beispiel

Postby super » 19. November 2007 20:06

guten abend
ichhabe diesen code:
http://de.php.net/manual/de/class.dir.php

Code: Select all
<?php
$d = dir("/etc/php5");
echo "Handle: " . $d->handle . "\n";
echo "Path: " . $d->path . "\n";
while (false !== ($entry = $d->read())) {
   echo $entry."\n";
}
$d->close();
?>

da soll dies angezeigt werden:
Handle: Resource id #2
Path: /etc/php5
.
..
apache
cgi
cli


bei mir sieht das dann so aus :-(
Handle: Resource id #4 Path: c:/xampp/htdocs/confixx/php . .. Auto_Skat_einlesen.bak Auto_Skat_einlesen.php Auto_Skat_einlesen1.php Dateneingabe.bak Dateneingabe.php Holzmaserung.gif skat_ausgabe_tab.bak skat_ausgabe_tab.php skat_protokoll.txt skat_test.txt Text_anzeigen.bak Text_anzeigen.php verzeichniss_anzeigen.bak verzeichniss_anzeigen.php verzeichniss_anzeigen_1.bak verzeichniss_anzeigen_1.php

wie kommts ?

als anfänger habe ich da kaum chance, wen die beispiele was anders zeigen als vorgegeben.

wie könnte der code aussehen dass per filter nur die dateien mit endung .txt ausgegeben werden ?

danke
gruss roland_k
logik ist einfach, man muss sie nur verstehen:-)
super
 
Posts: 20
Joined: 31. October 2007 10:07

Postby Scory » 19. November 2007 22:22

da soll dies angezeigt werden:


Nein, soll nicht. Du liest schlecht, genau steht dort dieses:

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:


"Ähnlich" sagt Dir was?!

Warum zeigt Dein Script etwas anderes? Weil der Inhalt von Deinem Verzeichnis anders ist, als der vom Autor des Beispielscripst. Deswegen auch nur "ähnlich".

Ich bin ehrlich: deine Frage ist fürchterlich. Ist das wirklich zuviel verlangt (wo Du auch noch den Inhalt Deines Ordners eigentlich erkennen müßtest), zu verstehen, warum das Script bei Dir eine andere Ausgabe hat?

wie könnte der code aussehen dass per filter nur die dateien mit endung .txt ausgegeben werden ?


Indem Du, statt einfach bedingungslos $entry auszugeben, überprüfst, ob $entry am Ende ".txt." stehen hat. Finde heraus, wie man Strings darauf untersucht, ob an gewissen Positionen gewisse Teilstrings stehen.

Grüße
Scory
Scory
 

Postby sari42 » 19. November 2007 22:25

Das Beispiel ist für die Ausgabe auf der Konsole.
Für den Browser muß "\n" in "<br>\n" oder '<br>' geändert werden. Oder einfach "Handle... in "<PRE>Handle... ändern.

p.s.:
Code: Select all
while (false !== ($entry = $d->read())) {
   if (stripos($entry, '.txt')) echo $entry."\n";
}
zeigt nur ".txt" Dateien.
sari42
 
Posts: 800
Joined: 27. November 2005 18:28


Return to PHP

Who is online

Users browsing this forum: No registered users and 25 guests