Dude: Zeitraum bei Array: Anfang und Ende finden?

Beitrag lesen

$start="";
$tag=0;
for( $i=$pos-1; $i>=0; $i--) {
    if( date("Y-m-d",strtotime($gesuchtedatum." +".(--$tag)." days"))==$array[$i]){
        $start=$i;
    }
    else {
        break;
    }
}

Hi Skeeve,

leider klappt Dein Code gar nicht. Ich habe weiter herumgespielt:

$pos;
   for($i=0;$i<count($ugschicht);$i++){
   if($dat==$ugschicht[$i]){$pos=$i; break;}
   }
   echo $pos;

$start="";
   $laufdatum=$dat;
   $tag=1;
   for($i=$pos-1;$i>=0;$i--){
   if(date("Y-m-d",strtotime($laufdatum." -".($tag++)." days"))==$ugschicht[$i]){
   //$laufdatum=$ugschicht[$i];
   $start=$i;
   }else{
   $start=$i+1;
   break;
   }
   }

$ende="";
   $laufdatum=$dat;
   $tag=1;
   for($i=$pos+1;$i<count($ugschicht);$i++){
   if(date("Y-m-d",strtotime($laufdatum." +".($tag++)." days"))==$ugschicht[$i]){
   //$laufdatum=$ugschicht[$i];
   $ende=$i;
   }else{
   $ende=$i-1;
   break;
   }
   }

Problem ist nun, dass bei ugschicht[0] keine Augabe erfolgt. Der Beginn des zweiten Zeitraums in diesem Monat wird fehlerlos ausgegeben.

Ebenso problematisch verhält es sich mit dem Ende bei dem letzten Arryeintrag.

Nur: WARUM?!

Dude