PHP date time greater than today
You are not comparing dates. You are comparing strings. In the world of string comparisons, 09/17/2015
> 01/02/2016
because 09
> 01
. You need to either put your date in a comparable string format or compare DateTime
objects which are comparable.
<?php
$date_now = date("Y-m-d"); // this format is string comparable
if ($date_now > '2016-01-02') {
echo 'greater than';
}else{
echo 'Less than';
}
Demo
Or
<?php
$date_now = new DateTime();
$date2 = new DateTime("01/02/2016");
if ($date_now > $date2) {
echo 'greater than';
}else{
echo 'Less than';
}
Demo
PHP: Date larger than current date
Try converting them both to timestamps first, and then compare two converted value:
$curdate=strtotime('22-02-2011');
$mydate=strtotime('10-10-2011');
if($curdate > $mydate)
{
echo '<span class="status expired">Expired</span>';
}
This converts them to the number of seconds since January 1, 1970, so your comparison should work.
get the data is greater than is equal todays date
Your dates are not in a valid MySQL date format (the column is presumably a VARCHAR
or similar), and are being compared as strings. Since all your dates start with 1
, 2
, or 3
, they are all greater than (using a string comparison) a date string starting with 0
. You need to convert the formats to compare correctly:
SELECT *
FROM tbl_reservation_info
WHERE ri_id !=''
AND status = 'Success'
AND STR_TO_DATE(ri_arrival_date, '%d-%b-%Y') > STR_TO_DATE('08-Apr-2019', '%d-%b-%Y')
php greater than certain time
Should do it
if (((int) date('H', $currentTime)) >= 16) {
// .. do something
}
Because PHP is weak-typed you can omit the (int)
-casting.
As a sidenote: If you name a variable $currentTime
, you shouldn't add 1 hour to it, because then its not the current time anymore, but a time one hour in the future ;) At all
if (date('H') >= 16) { /* .. */ }
Comparing different date format than US to another date
Raül.
If you want to add days to a date, you should do it on the string and then convert it to DateTime:
If I got it right, you have 3 dates:
- The one that comes from
$item->getData('attribute_name');
as String - The user date from
$userDate = DateTime::createFromFormat('d/m/Y', $date);
as DateTime - The "+ 15 days" date, which you have to calculate.
Before converting your string to DateTime object (in $data = date_create(date('d/m/Y',strtotime($date)));
), you should calculate your "+ 15 days" date.
Here's how I would do it:
$datestring = '05/02/2019';
$date = date_create(date('d/m/Y',strtotime($datestring))); //first date
$userDate = DateTime::createFromFormat('d/m/Y', '22/02/2019'); //user date
if ($userDate === false) {
throw new InvalidArgumentException('Invalid date string');
}
$cmp = DateTime::createFromFormat('d/m/Y',date('d/m/Y', strtotime($date->format('Y/m/d').' + 15 days'))); //first date +15 days
if ($userDate <= $cmp && $userDate >= $date) {
$result = "The user date is in range";
}
else {
$result = "The user date is out of range";
}
echo('<b>First date: </b>'.$date->format('d/m/Y'));
echo('<br> <b>User date : </b>'.$userDate->format('d/m/Y'));
echo('<br> <b>Date + 15 : </b>'.$cmp->format('d/m/Y'));
echo('<br><br>'.$result);
Also, the ' + 15 days' concatenation only worked for me in Y/m/d format. That's why I formatted it to calculate.
In my example I compare the $userDate to check if it falls between the other two, but you can compare them as you wish.
Hope it helps
Related Topics
How to Get the Function Name Inside a Function in PHP
How to Implement a Bitmask in PHP
How to Efficiently Use Try...Catch Blocks in PHP
Generating Confirmation Code for an Email Confirmation
Regular Expression Preg_Quote Symbols Are Not Detected
How Does This Giant Regex Work
How to Hash Long Passwords (>72 Characters) with Blowfish
How to Make Good Use of Multicore Cpus in Your PHP/MySQL Applications
Php: Determine Where Function Was Called From
How to Log in to PHPmyadmin with Wamp, What Is the Username and Password
Mail(): Smtp Server Response: 550 the Address Is Not Valid Error on Hmailserver
How to Display the Users Profile Pic Using the Facebook Graph API
Replacing Spaces with Underscores
Why Does File_Get_Contents Work with Google.Com But Not with My Site
How to Enable Curl for an Installed Ubuntu Lamp Stack