Wenn Order leer ist, dann... (PHP)?

... komplette Frage anzeigen

3 Antworten

Prüfe wieviele DATEIEN vorhanden sind oder wieviele ORDNER. Logischerweise solltest du . Und .. nicht mitzählen

Antwort bewerten Vielen Dank für Deine Bewertung

Dein Code füllt ein Array mit allen Dateien im angegebenen Verzeichnis, jetzt brauchst du nur noch prüfen wieviele bzw. ob Dateien im Array sind (oder dieser String oder was das sein soll, jedenfalls solltest du das als Arrays implementieren).

Die Aufgelisteten Überverzeichnise .. und . sowie die Datei "index.php" werden dabei berücksichtigt.

Wenn also das Array $liste leer ist hast du deine Bedingung für deine IF-Verzweigung ( nicht Schleife!! ).

Ps. Google ist dein Freund.


Antwort bewerten Vielen Dank für Deine Bewertung

Guck dir mal diese Funktion an:

http://php.net/manual/de/function.scandir.php


$array = scandir(<dir>);

if(count($array) == 2) // 2 weil das array IMMER "." und ".." enthält
echo "Dir is empty";
else
//do stuff

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von petschkoo
15.10.2016, 15:29

Oder als funktion:

/**
* Scans if the dir is empty
*
* @param string $dir - Path to the Directory
* @return bool - true if dir is empty else false
*/
function isDirEmpty($dir) {
$array = scandir($dir);

if(count($array) == 2)
return true;

return false;
}

// Kann dann so wiederverwendet werden:
if(isDirEmpty('./images'))
echo 'Verzeichnis ist leer';
0