Witam,
mam taki problem:
mam dwa zakresy dat od - do.
Jak za pomocą php porównywać dwa zakresy dat - każdy z każdym - ale tylko dzień i miesiąc z pominięciem roku.
Witam,
mam taki problem:
mam dwa zakresy dat od - do.
Jak za pomocą php porównywać dwa zakresy dat - każdy z każdym - ale tylko dzień i miesiąc z pominięciem roku.
Nie bardzo wiem jaki chcesz ustalić porządek, porównuje się coś z reguły, aby ustalić co jest mniejsze, co równe, a co większe. Przykładowo, można ustalić, że zakresem najmniejszym jest ten który rozpoczął się najwcześniej, albo trwał najkrócej.
EDIT
Dodatkowo podaj format w jakim masz zapisaną datę, może pomogę.
Chcę sprawdzać czy data z zakresu x znajduje się w zakresie y ale z pominięciem roku
Przykład
zakres x1 np od 1 stycznia do 30 czerwca
x2 od 1lipca do 31grudnia
i teraz dowolną datę z dowolnego zakresu y sprawdzamy czy należy do x1 czy x2
obecnie datę mam w formacie rrrr-mm-dd
zamien sobie to na liczby, proste?
data_od =< twoja_data =< data_do
Napisałeś to tak zawile, że bardziej chyba się nie dało mam nadzieję, że dobrze zrozumiałem.
#Pierwszy zakres
$startRange1 = '1992-01-01';
$endRange1 = '1992-06-30';
#Drugi zakres
$startRange2 = '1993-07-01'
$endRange2 = '1993-12-31';
#Szukana data
$compareDate = '1994-05-12';
#Rozbijamy po myślniku na tablice
$startRange1 = explode('-', $startRange1);
$endRange1 = explode('-', $endRange1);
$compareDate = explode('-', $compareDate);
#Sprawdzamy czy szukany miesiąc znajduje się pomiędzy miesiącami z zakresu oraz czy szukany dzień znajduje się pomiędzy dniami z zakresu
if($compareDate[1] >= $startRange1[1] && $compareDate[1] <= $endRange1[1] && $compareDate[2] >= $startRange1[2] && $compareDate[2] <= $endRange1[2])
{
echo 'Data należy do pierwszego zakresu.';
}
if($compareDate[1] >= $startRange2[1] && $compareDate[1] <= $endRange2[1] && $compareDate[2] >= $startRange2[2] && $compareDate[2] <= $endRange2[2])
{
echo 'Data należy do drugiego zakresu.';
}
Mniej więcej coś takiego.