tobiassMedlem sedan maj 200254 inlägg Jag har en simpel kalender som lagrar data i radformat i textfiler. var månad en fil, var dag en rad.
jag har en for-loop som går igenom 4 månader (=4 filer från aktuell månad) och visar innehållet för besökaren.
När en fil inte finns/är tom stöter jag på problem. Den enda utvägen jag hittat är att använda return, men då avslutas ju hela funktionen och jag missar nästkommande månader.
Hur kan jag göra? Något alternativ till return? (tar jag bort det blir det exec-fel då filen inte finns) Finns någon typ av until-loop i php?
Kolla om filen existerar innan du läser igenom den, om den inte existerar fortsätt till nästa fil..
Men hur detta skrivs i kod är en annan sak, men det borde väl gå!
pimmeMedlem sedan sep. 20011 086 inlägg kolla upp file_exists() i manualen..
ThACRoWMedlem sedan dec. 2001314 inlägg Ungefär så här:
for ($i = 0; $i < count($array_filer); $i++) {
if (!file_exists($array_filer[$i])) {
continue;
}
...
}
PeWMedlem sedan juni 200010 432 inlägg Ska du endast loopa tills det inte finns nån fil är det bättre med:
$i=0;
$max = 16; /* antal filer... 16 (4*4) ? */
while(file_exists($array_filer[$i]) && $i<$max){
/* do something with array */
$i++;
}
Ska det endast ignoreras om en plats är tom men ändå löpa igenom alla tänkbara poster till slut, räcker det att innesluta satsen med det du ska göra i en if-sats under forloopen.
ThACRoWMedlem sedan dec. 2001314 inlägg Förresten, jag förstår inte varför detta skulle vara ett problem. Det enda du behöver göra är ju att kolla vilka filer du har i katalogen - då behöver du ju inte krångla till det med vilken månad det är just nu... eller?