Mailinglisten-Archive |
Hallo Holger,
Am Donnerstag, 23. Februar 2006 11:53 schrieb Holger Zengerle:
> http://de.php.net/manual/de/function.mkdir.php
>
> Wenn ich das jetzt hernehme, muss ich dann neben dem $dir den
> kompletten Pfad angeben oder nur den Pfad unterhalt der ausführenden
> Seite, die den Ordner anlegt?
eine relative Pfadangabe müßte auch gehen. Ich sehe keinen Grund warum
das nicht so sein sollte (oder sich einmal ändern sollte, Norbert ;-)).
Die mkdir()-Funktion kapselt ja eigentlich nur die entsprechende
Betriebssystem-Funktion, würde ich sagen. Und mkdir kann unter Linux
natürlich auch mit relativen Pfaden umgehen.
Wenn Du nicht aufpaßt, können relative Pfade aber zu unerwünschten
Ergebnissen führen, nämlich wenn Du im Dateisystem an einer anderen
Position bist, als Du glaubst. Dann ist die Pfadbasis anders und die
Verzeichnisse werden an einer anderen Stelle erstellt, als Du denkst.
> Wo muss ich da die variable "ordnernamen" noch angeben, dessen Ordner
> erstellt werden soll? Hinter dem $dir?
> Oder ist mit dem $dir schon der neue Ordnername gemeint?
>
> function mkdirs($dir = '/images/ausflugsfahrten/', $mode = 0777,
$recursive = true) {
[...]
> }
Nein! Du beziehst Dich hier auf ein Beispiel aus den "User Contributed
Notes" zu mkdir() im Online-Handbuch. $mode = 0777 und $recursive =
true bedeuten nur, daß diese beiden Werte beim Funktionsaufruf
weggelassen werden können und in diesem Fall mit diesen Werten belegt
werden.
Es könnte also wie folgt aussehen:
function mkdirs($dir, $mode = 0777,$recursive = true) {
...
}
$bVerzAngelegt = mkdirs('/images/ausflugsfahrten/');
Die Einstellung $recursive = true kannst Du ruhig so lassen. Ansonsten
gibt es einen Fehler, wenn Du /images/ausflugsfahrten/ erstellen
willst, /images/ aber noch gar nicht existiert. Die Rekursion stellt
sicher, daß in diesem Fall zunächst /images/ angelegt wird und
anschließende dann /images/ausflugsfahrten/.
$mode solltest Du allerdings passend setzen, d.h. so eingeschränkt wie
möglich.
Viele Grüße
Lutz
php::bar PHP Wiki - Listenarchive