Mailinglisten-Archive |
hallo liste,
ich habe nun untenstehendes (mein) problem wie folgt gelöst u. bin damit
vorerst zufrieden:
function return_past_months($current_month, $current_year, $max)
{
$months = array
(
1 => "Januar",
2 => "Februar",
3 => "März",
4 => "April",
5 => "Mai",
6 => "Juni",
7 => "Juli",
8 => "August",
9 => "September",
10 => "Oktober",
11 => "November",
12 => "Dezember"
);
for($i = 1; $i <= $max; $i++) # schleife über die anzahl, die zurückgegeben
{
$month = $current_month - $i;
$year = $current_year;
$year = ($month < 1 ? $year-- : $year);
$month = ($month < 1 ? $month + sizeof($months) : $month);
$re_months[($i - 1)]["MONTH"] = $month;
$re_months[($i - 1)]["YEAR"] = $year;
}
return $re_months;
}
$past_months = return_past_months($MONTH, $YEAR, 3);
# setlocale ("LC_TIME", "de_DE");
for ($i = 0; $i < sizeof($past_months); $i++)
{
$aYear = $past_months[$i]["YEAR"];
$aMonth = $past_months[$i]["MONTH"];
$PAST_MONTHS .= "<a href='$PHP_SELF?MONTH=$aMonth&YEAR=$aYear'>".
strftime("%B '%y", strtotime($aYear."-".$aMonth."-01"))."</a>";
if ($i != count($past_amonths) - 1)
{
$PAST_MONTHS .= "<br>";
}
}
danke für eure hilfen, hat mir nachgeholfen!!
c ya
Alexander M.
" > Am Montag, 15. Oktober 2001 12:28 schrieben Sie:
> > Aloha,
> >
> > > Von: Alexander Manhart[SMTP:misterelsa_(at)_counterstrike.de]
> > >
> > > ich bekomme mit einer funktion get_current_month das aktuelle monat
10.
> > > wie kann ich die vormonate dynamisch ermitteln? 9, 8 und 7. das ist
> > > eigentlich nicht ganz mein problem.
> > > sondern, wäre heute das monat z.b. 2, dann müsste die funktion 1, 12
und
> > > 11
> > > liefern!
> > >
> > > natürlich könnte ich mir ein array () mit allen monaten oder ein max.
> > > anzahl monate definieren und davon die berechnung aus starten.
> > >
> > > geht das aber auch über php funktionen? bzw. eine coole dynamische
> > > funktion,
> > > wo ich einstellen kann wieviele monate er mir auflisten soll (statt
drei
> > > dann z.b. fünf...).
> >
> > Klar. Du musst als erstes die Klasse brain einbinden, ohne die geht das
> > nicht.
> >
> > require brain; # http://dict.leo.org
> >
> > function return_x_month($current, $max) {
> > $vormonate = array();
> > for($i=0, $i <= $max, $i++) # schleife über die anzahl, die
zurückgegeben
> > werden soll
> > $monat = $current - $i - 1; # einer der geuschten monate
> > $monat = ( $monat < 1 ? $monat + 12 : $monat ); # 12 dazu falls
> > negativ.
> > $vormonate[] = $monat;
> > }
> > return $vormonate
> > }
> >
>
> funktioniert nicht bei $max > 12
>
>
> require brain; # http://dict.leo.org
>
> function return_x_month($current, $max) {
> $vormonate = array();
> for($i=1, $i <= $max, $i++)
> $monat = $current - $i ;
> while( $monat < 1 ) $monat += 12;
> $vormonate[] = $monat;
> }
> return $vormonate
> }
> ..."
php::bar PHP Wiki - Listenarchive