Dir

Hallo Experten,

Möchte Verzeichnisse auslesen.
D.h., nur Verzeichnisse, keine Dateien.
Habe mir gedacht, jede Datei hat ja eine Punkt im Namen.

$i++;
$ordner[$i] = $entry;
$punkt = strpos($ordner[$i],".",1);
if ($punkt == 0) {
$z++;
$text[$z] = $ordner[$i];
echo " $text[$z] ";
}

Funktioniert auch.
Nur der ERSTE Link ist kein Ordner.
Da stehen immer 2 Punkte … als Link
Was liest PHP da aus/ein?
Im HTML Code sieht das dann so aus:
a href …/datei.xxx

Das Ganze teste ich auf Festplatte unter Apache (win xp)

Klaus

Hallo Klaus,

Möchte Verzeichnisse auslesen.
D.h., nur Verzeichnisse, keine Dateien.
Habe mir gedacht, jede Datei hat ja eine Punkt im Namen.

Nur der ERSTE Link ist kein Ordner.
Da stehen immer 2 Punkte … als Link
Was liest PHP da aus/ein?
Im HTML Code sieht das dann so aus:
a href …/datei.xxx

Das Ganze teste ich auf Festplatte unter Apache (win xp)

Grundsätzlich hats du da einen Denkfehler.
Unter Unix war das schon immer so und unter MS-DOS war es auch schon erlaubt Teilweise erlaubt.

Punkte dürfen sowohl in Dateinamen wie auch Verzeichnisnamen vorkommen.
Dateinamen-Erweiterungen haben bei Unix keine technische Bedeutung, bei anderen Betriebssystem dienen sie zur Erkennung des Dateiformats.

Mittlerweile ist es bei Windows auch erlaubt Punkte in Verzeichnisnamen zu verwenden.

Des weiteren gab es bei Unix, MS hat das dort abgekupfert, zwei "SCheinverzeichnise.
Nämlich „.“ und „…“
„.“ zeigt zum Wurzelverzeichnis. Bei MS ist das oberste Verzeichnis des Laufwerks auf welchem man sich gerade befindet. Bei Unix ist das etwas anders, da Unix eigentlich keine Laufwerksbuchstaben kennt.
„…“ zeigt auf das gerade übergeordnete Verzeichnis.

Eine ganz dumme idee ist es „…“ oder „.“ mit DELETE löschen zu wollen !!
Besonders zu DOS-Zeiten haben das diverse DAUs erfolgreich versucht.

MfG Peter(TOO)

Des weiteren gab es bei Unix, MS hat das dort abgekupfert,
zwei "SCheinverzeichnise.
Nämlich „.“ und „…“
„.“ zeigt zum Wurzelverzeichnis. Bei MS ist das oberste
Verzeichnis des Laufwerks auf welchem man sich gerade
befindet. Bei Unix ist das etwas anders, da Unix eigentlich
keine Laufwerksbuchstaben kennt.

„.“ ist das aktuelle verzeichnis - „/“ ist das wurzelverzeichnis

Hallo

Möchte Verzeichnisse auslesen.
D.h., nur Verzeichnisse, keine Dateien.
Habe mir gedacht, jede Datei hat ja eine Punkt im Namen.

Verwende lieber die Prüffunktionen is_file() und is_dir().

Johannes Matschke