izmenjeno 1 put, poslednji put SashaM 30.11.2005. u 15:26
Izmene poruke
- SashaM30.11.2005. u 15:26zapis iz teksta poruke
Posto nigde nisam uspeo da nadjem funkciju koja dodaje odredjen broj dana (meseci, godina) datom datumu napisao sam svoju pa je postavljam ovde ako jos nekom zatreba.
Input i output datuma je u formatu yyyy-mm-dd ili yyyy-m-d kako bi bio kompatibilan sa MySQL poljem za datum. Naravno, lako se moze izmeniti da se datum unese i vrati u bilo kom obliku.
Zbog ogranicenja mktime funkcije ne moze se manipulisati datumom pre 1.1.1970.
Dati primer pokazuje da se dobro snalazi sa prestupnim godinama.
Eto, pa ako nekom zatreba neka je slobodno iskoristi u originalnom ili izmenjenom obliku.
Pozdrav
Input i output datuma je u formatu yyyy-mm-dd ili yyyy-m-d kako bi bio kompatibilan sa MySQL poljem za datum. Naravno, lako se moze izmeniti da se datum unese i vrati u bilo kom obliku.
Code:
function date_add_days($date, $days)
{
$arrDate = explode ("-", $date);
$intDay = $arrDate[2];
$intMonth = $arrDate[1];
$intYear = $arrDate[0];
$intDateJul = gregoriantojd($intMonth, $intDay, $intYear);
$intDateJul += $days;
$arrDate = explode ("/", JDToGregorian($intDateJul));
return date("Y-m-d",mktime(0, 0, 0, $arrDate[0],$arrDate[1],$arrDate[2]));
}
function date_add_days($date, $days)
{
$arrDate = explode ("-", $date);
$intDay = $arrDate[2];
$intMonth = $arrDate[1];
$intYear = $arrDate[0];
$intDateJul = gregoriantojd($intMonth, $intDay, $intYear);
$intDateJul += $days;
$arrDate = explode ("/", JDToGregorian($intDateJul));
return date("Y-m-d",mktime(0, 0, 0, $arrDate[0],$arrDate[1],$arrDate[2]));
}
Zbog ogranicenja mktime funkcije ne moze se manipulisati datumom pre 1.1.1970.
Code:
echo date_add_days("2004-2-27", 3).' '.date_add_days("2005-2-27", 3);
echo date_add_days("2004-2-27", 3).' '.date_add_days("2005-2-27", 3);
Dati primer pokazuje da se dobro snalazi sa prestupnim godinama.
Eto, pa ako nekom zatreba neka je slobodno iskoristi u originalnom ili izmenjenom obliku.
Pozdrav
Potpis
Life happens but shit goes on