mit php ordner/verzeichnis auslesen

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

mit php ordner/verzeichnis auslesen

Beitrag von Lord_Femto »

hi.
ich bin es mir langsam leid wenn ich bilder in ein ordner uploade immer wieder die jeweilige php auslese datei zu ändern.

gibt es irgendeine php funktion, die es ermöglicht einen ordner in dem bilder sind auszulesen?

ich hoffe ihr versteht mich.
danke im voraus.
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

http://www.isle-of-wish.de/downloads/ph ... /liste.txt

Gibt eine Liste aller Dateien und Verzeichnisse des Verzeichnisses aus indem sich die Datei befindet. Das kannst Du anpassen, dass nur Bilder gelistet werden.

Gruß Christian
---
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

Beitrag von Lord_Femto »

hi christian

und wie kann ich das einstellen, dass nur bilder bzw. .jpg dateien gelistet werden?

warum kann ich nicht auch diesen code nehmen?

Code: Alles auswählen

$verz = "PB-Bilder/Band/Eggat/";
$dir = opendir($verz);
while ($file = readdir ($dir)) {
	if($file != "." && $file != "..") 
	$bilder[] = "" . $verz . "" . $file . ""; }
closedir($dir);
danke im voraus.
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Lord_Femto hat geschrieben:und wie kann ich das einstellen, dass nur bilder bzw. .jpg dateien gelistet werden?
Dazu brauchst Du noch sowas:

Code: Alles auswählen

if( preg_match('/(\.gif$|\.png$|\.jpg|\.jpeg)$/is', $file) )
{
}
Lord_Femto hat geschrieben:warum kann ich nicht auch diesen code nehmen?
Wer hat gesagt, dass Du das nicht nehmen kannst?
Ich hatte das halt so gerade hier rumliegen.. Da wird die Liste halt noch sortiert bevor sie ausgegeben wird.

Gruß Christian
---
Mr.Pipapo
Mitglied
Beiträge: 377
Registriert: 16.10.2003 19:18
Wohnort: München
Kontaktdaten:

Beitrag von Mr.Pipapo »

Alle Dateien aus einem Verzeichnis auslesen geht relativ einfach, die Funktion readdir() ist dein Feund. :)
Beispiel:

Code: Alles auswählen

<?php
    $handle = opendir('.');
    while($file = readdir($handle)) {
        if($file != "." AND $file != ".." AND $file != "Thumbs.db") {
            $list[] = $file;
        }
    }
?>
Dieser Code lädt alle Dateien aus dem Verzeichnis in das Array $list.
Wenn du nur Bilder haben willst, musst du einfach noch eine if-Abfrage in die While-Schleife reinbauen.
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

Beitrag von Lord_Femto »

wie wir es hier oben hatten, konnte man ja bestimmte datei endungen herausfiltern.

ok. kann man es auch so machen, dass wenn ich in meiem ordner z.b.

alex-bild01.jpg
alex-bild02.jpg
alex-bild03.jpg
erich-bild01.jpg
erich-bild02.jpg
...

eine art "prefix" definieren. z.b. in diesem fall alle alex-bildXX.jpg und die zahlen irgendwie offen lassen. geht das?
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

kann dir nicht ganz folgen.....

jedenfalls kannst du mit Regulären Ausdrücken u.A. eine Schablone an die Files legen und somit bestimmte Teile ausschließen.

Noch eine Möglichkeit wäre Substring Zeichenbereich ausschneiden und überprüfen.

macht aber nur Sinn wenn der String einheitlich gleich ist......
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

Beitrag von Lord_Femto »

naja ich glaube wir meinen beide schon das gleiche.

also noch mal zum verständnis.
ich habe einen image ordner. in dem sind folgende dateien enthalten:

alex-bild01.jpg
alex-bild02.jpg
alex-bild03.jpg
alex-bild04.jpg
alex-bild05.jpg
alex-bild06.jpg
erich-bild01.jpg
erich-bild02.jpg
...

ich möchte jetzt aber nur die, die mit alex-bild beginnen. die zahl danach ist schnuppe. und alle alex-bild... möchte ich dann in ein array stecken. soweit verstanden? also ich möchte jetzt nicht direkt die dateiendungen, wie z.b. .jpg oder .gif , sondern viel mehr die anfänge wie alex-bild oder erich-bild

ich hoffe du verstehst, was ich meine.
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Lord_Femto hat geschrieben:....eine art "prefix" definieren. z.b. in diesem fall alle alex-bildXX.jpg und die zahlen irgendwie offen lassen. geht das?
Sicher geht das.
http://de2.php.net/manual/de/function.preg-match.php
http://www.webstyleboard.de/wsb/thread. ... =3099&sid=
http://de.selfhtml.org/cgiperl/sprache/regexpr.htm
http://www.it-development.de/forum/show ... adid=11872

Gruß Christian
---
Lord_Femto
Mitglied
Beiträge: 701
Registriert: 19.12.2003 15:53
Wohnort: Berlin

Beitrag von Lord_Femto »

das klingt doch schon einmal ausgezeichnet.

doch wie bekomme ich das hier herein?

Code: Alles auswählen

$dir = opendir($verz);
while ($file = readdir ($dir)) {
	if($file != "." && $file != ".." && preg_match('/(\.gif$|\.png$|\.jpg|\.jpeg)$/is', $file))
	$bilder[] = "" . $verz . "" . $file . ""; }
closedir($dir);
also wie sieht denn dann die suchmaske nach alex-bild.... aus?
Gruß Lord_Femto
visit - http://www.pandemicbrew.de
Project X
Antworten

Zurück zu „Coding & Technik“