This question already has answers here:
Check if two PHP datetime objects are set to the same date ( ignoring time )
(10 answers)
Closed 7 years ago.
Here is my question:
I have 2 datetime fields with the following values.
- n_date = '2015-11-06 00:00:00.000'
- ArrivalDate = '2015-11-06 01:00:00.000'
I want to compare only the date part of these fields so that the following:
if ($n_date!=$v[ArrivalDate]
{
do something ...
}
Does not do something
thx in advance!
Use strtotime() for this,
if((date("Y-m-d",strtotime($n_date))) == (date("Y-m-d",strtotime($ArrivalDate)))) {
// both dtae are equal
} else {
// both date are not equal
}
Related
This question already has answers here:
How can I compare two dates in PHP?
(13 answers)
Closed 5 years ago.
i need to compare two date from string,
my dates:
first date: 11-11-19
second date: 11-24-17
so i try to
$firstdate = "11-11-19";
$seconddate = "11-24-17";
if($firstdate < $seconddate)
{
echo "firstdate is minor than the secondate";
}
else
{
echo "seconddate is major than the firstdate";
}
if i change < or > the if statement should change, but i get always the firsdate...
how to do to compare two dates in this forma mm-dd-yy ?
Thanks
You can use strtotime to convert string to unix timestamp, and compare that.
$firstdate = strtotime("11-11-19");
$seconddate = strtotime("11-24-17");
if($firstdate < $seconddate)
{
echo "firstdate is minor than the secondate";
}
else
{
echo "seconddate is major than the firstdate";
}
You can convert both dates to timestamp:
echo (strtotime($firstdate) < strtotime($seconddate)) ? "firstdate is minor than the secondate" : "seconddate is major than the firstdate";
This question already has answers here:
date validation not to be today
(3 answers)
How can I compare two dates in PHP?
(13 answers)
Closed 7 years ago.
I have used a php code to validate two dates.If date 1 = date 2 then return false els true.Below is the code where error is it is always returning false.
{
$d1 =$values['DATE']; //date 1 in dd-mm-yyyy format
$d2 =$values['DATE_OF_LEAVE']; //date 2 in dd-mm-yyyy format
if(strtotime($d1) != strtotime($d2))
{
return true;
}
echo '<script type="text/javascript">';
echo 'alert("Application date and leave date should be different.")';
echo '</script>';
return false;
}
Set both to a least common denominator with date().
if(date('Ymd',strtotime($d1)) != date('Ymd',strtotime($d2)))
This question already has answers here:
Compare given date with today
(14 answers)
Closed 8 years ago.
I want check whether the date from variable is older than current date about 7 days or more.
Now, I check whether this date is -1 day from current:
$old_email = strtotime($result->repairs_date_received) >= strtotime('-1 day') ? true : false;
UNIX time is in seconds, so you can simply check using basic operators like > and <.
$week_ago = strtotime('a week ago');
$check = strtotime($result->repairs_date_received);
if($check > $week_ago){
// date is newer than week
} else {
// date is older than week
}
This question already has answers here:
Compare given date with today
(14 answers)
Closed 8 years ago.
I want to execute a if statement where I want if given {date} is less or equal than today then {due_amount}= {paidbystudent} else {due_amount}= '0'
Here is my code:
if ({date} <= Today()) {
{due_amount}={paidbystudent};
} else {
{due_amount}='0';
}
But its not working. Please help me how to do this.
I have also tried this code but its not working properly this is checking only date and ignoring month and year
$todays_date=date("d/m/Y", strtotime("today"));
$date=date("d/m/Y", strtotime({date}));
if ($date <= $todays_date) {
{due_amount}={paidbystudent};
} else {
{due_amount}='0';
}
How about this:
$date = '2014-05-22'; // fetch from db, user input etc
if (strtotime($date) <= time()) {
echo 'paid by student';
} else {
echo 0;
}
DEMO
EDIT: As pointed out by deceze, a better way to approach this would be to compare the UNIX timestamp values instead of a date format.
This question already has answers here:
How can I compare two dates in PHP?
(13 answers)
Closed 9 years ago.
I get some datas with dates from a database :
$data['my_date'])
Type is date : YYYY-MM-DD
I would like to make with PHP a condition to found if $data['my_date']) is between 2 dates like :
if ($data['my_date'] >= 2009-01-01 && $data['my_date'] <= 2009-12-31) {
$datas = '5';
}
else {
$datas = 1;
}
It doesn't work as expected, the condition is not verified. What should i do ?
There is no literal syntax for dates, you should enclose them in quotes and treat them as strings. If you are using the YYYY-MM-DD format, then it is sortable alphabetically, and your current method should work.
if ($data['my_date'] >= '2009-01-01' && $data['my_date'] <= '2009-12-31') {
$datas = '5';
}
else {
$datas = 1;
}
If you don't quote your dates, you are doing integer operations:
$data['my_date'] >= 2009-01-01 ====> $data['my_date'] >= 2007
You need to convert all dates by strtotime() to timestamp and then compare them.
strtotime($data['my_date']) >= strtotime('2009-01-01')...
You use either strtotime() or mktime() to convert your dates into timestamp, then compare it.