Bilder in array mit scandir()

rernanded

Erfahrenes Mitglied
Hallo

ich möchte die Bilder im Ordner images die ich im oberen Code einzeln auflisten muß mittels scandir() im array "unterbringen".

MONI


PHP:
$images = array(
  'images/bestkids001.jpg',
  'images/bestkids002.jpg',
  'images/bestkids003.jpg',
  'images/bestkids004.jpg',
  'images/bestkids005.jpg'
  );
PHP:
<?php
$images = scandir('images');
foreach ($images as $image) {
echo $image."<br />";
};
?>
 
Und was ist das Problem? Bzw. gibt es keins, da der Thread schon als erledigt markiert ist?
 
Hi das Problem ist das das Häkchen irgendwie da rein gerutscht ist, keine Ahnung wie?!:

Frage bleibt also bestehen.
 
Okay dann das Problem nochmals:
Im oberen Codeschnipsel siehst Du wie ich einzelne Bilder aus meinem Ordner images in das array schreiben muß.
Diese Bilder werden dann später einzeln aufgerufen und angezeigt.
Hätte ich jetzt 1.000 Bilder im Ordner wäre das ein mühsames Unterfangen diese Liste zu erstellen.
Ich denke das geht einfacher wenn zB ich mit scandir() die Liste einfach in das array einlesen lasse.

Ganz vereinfacht:

PHP:
$images = array(
... scandir('images') ...
  );

Wahrscheinlich ist das ganz simpel, :)
nur ich kriegs wieder nicht hin zumal da ja diese "merkwürdigen" Punkte(Linux-Server - Verzeichnisstruktur) in der Liste auftauchen wenn man den 2. Code (s.o.) benutzt.
MONI
 
Zuletzt bearbeitet:
(Da du ganz oben schon einen Code mit scandir hattest war mir das Problem eben nicht klar)

Die Sachen mit den Punkten soll so sein.
Einfach rausfiltern:
PHP:
if ($image != '.' && $image != '..')
 
Oder Du machst es in schön, so wie man das heutzutage lösen würde:
PHP:
$files  = new DirectoryIterator( $path );
$filter = new CallbackFilterIterator( $files, function ( $current ) {
  return $current->isFile();
});

foreach ( $filter as $file ) {
  echo $file->getFilename();
}
 
Hi sheel und einfach nur crack:

Danke sweit, aber mein Hauptproblem ist damit ja nicht gelöst:
Wie kriege ich die Liste an Files im Ordner images (mittels scandir() oder anders) in mein array?



MONI
 
Ein bisschen nachdenken, wäre ganz nett:
PHP:
$images = array();
$files  = new DirectoryIterator( $path );
$filter = new CallbackFilterIterator( $files, function ( $current ) {
  return $current->isFile();
});

foreach ( $filter as $file ) {
  $images[] = $file->getPathname();
}
 
Ein bisschen nachdenken, wäre ganz nett:
PHP:
$images = array();
$files  = new DirectoryIterator( $path );
$filter = new CallbackFilterIterator( $files, function ( $current ) {
  return $current->isFile();
});

foreach ( $filter as $file ) {
  $images[] = $file->getPathname();
}

Hi und nochmals danke einfach nur crack. Habs jetzt hingekriegt.
Hatte aber sowas in Gedanken (also mit scandir() s.u.) aber DirectoryIterator usw. nicht auf dem Schirm:
PHP:
$fileArray = scandir($dir);
foreach ($fileArray as $file) {
...
  }
MONI
 

Neue Beiträge

Zurück