Frage zu For Each -Schleife

hondocrx

Erfahrenes Mitglied
Hallo!

Ich habe ein Array mit bestimmten Dateinamen welche gesucht werden sollen.

PHP:
For Each sDateiname In arrDateiliste

    if
        Existiert die date mach das
    else
        mach das und ne kleine pause
        --> DAS MÖCHTE ICH !
        setz die FOR-Schleife um 1 zurück damit die Prüfung noch mal erfolgt
    end if

NEXT

Im Prinzip möchte ich das im ELSE-Zweig die Forschleife nicht hochgezählt wird sDateiname noch mal geprüft wird.

Hat jemand eine Idee?

MfG
 
Hi

anders formuliert: solang die Datei nicht existiert immer etwas warten und dann wieder versuchen?
Wenn man das genau so programmieren würde (while nicht existiert, sleep) gibt es noch immer das Problem, dass die Datei kurz existieren könnte, und beim "mach das" dann aber schon wieder gelöscht ist.

Würde zuerst das machdas so umändern, dass die Aktion mit der Datei einfach versucht wird, und wenn es nicht funktioniert hat (Exception oder was auch immer) dann eine neue Variable success auf false setzen. Wenn es erfolgreich durchgelaufen ist, für diese eine Datei, dann success auf true setzen.
Und zum Abschluss noch, innerhalb der Dateischleife, zuerst success = false, und dann eine Schleife while success== false und da die ganze eigentliche Arbeit rein,
 
Ich würde nicht einfach exception schmeißen lassen, sondern vorher schon schauen ob die Datei existiert.
Exceptions sind teuer, was bei paar tausend dateien zu performance einbußen führen könnte.
 
Zurück