Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

207
Views
PHP Checking if outputted date is less than current date

I have the following function which works well but would like to check the returned date and compare with the current date if before current date to show something if current or in future show as normal.

Function:

function dateFormat( $old, $correction ) {
    $old_date_timestamp = strtotime( $old );
    $new_date = date( 'jS F Y', $old_date_timestamp + $correction );
    return $new_date;
}

Call:

echo '<li class="list-group-item">Support Expires: ' . dateFormat($purchase_data['verify-purchase']['supported_until'], 11*60*60 . '</li>');

Output:

2nd March 2016

So as not today's date and/or before today's date would like to echo a message, else just show the date.

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

In PHP it is very simple to compare two different dates using < = > like you normally compare numbers. The only step prior to this is below:

//Tell PHP that the value in variable is a date value
$date_1 = date_create("2017-05-29"); //This value can be any valid date format
date_1_formatted = date_format($date_1, "Y-m-d"); //This formats the date_1

//Now you can simply put the second date, for example, today.
$date_2 = date_create("2017-04-29"); //This value can be any valid date format
date_2_formatted = date_format($date_2, "Y-m-d"); //This formats the date_1

//For current date, it is simpler
$date_today_formatted = date("Y-m-d");

//Now you can compare these two dates easily
if ($date_1 < $date_today_formatted) {
    echo "Date 1 falls before today.";
}
else {
    echo "Date 1 falls after today.";
}

Hope this helps!

over 4 years ago · Santiago Trujillo Report

0

I managed to work it out using the following 2 functions:

function dateFormat( $old, $correction ) {
    $old_date_timestamp = strtotime( $old );
    $new_date = date( 'jS F Y', $old_date_timestamp + $correction );
    return $new_date;
}

function checkLicenceSupport($licence_date) {
    $date_now = new dateTime();
    $date_set = dateFormat($licence_date, 11*60*60);

    if ($date_now > $date_set) {
      return 'date expired';
    } else {
      return 'date valied';
    }
}
over 4 years ago · Santiago Trujillo Report

0

I have the following function which works well, but would like to check the returned date and compare with the current date.

If it is before the current date, show something.

If it is the current date, or in future, show as normal.

I needed to rewrite your question, because lack of grammar and punctuation made it confusing. No offense intended.

  • Your call code has the closing parenthesis for your function call is placed wrongly.

    dateFormat($purchase_data['verify-purchase']['supported_until'], 11*60*60)

  • It is more readable to use full days or hours (in seconds):

    11*86400 //(11 Days);

    11*3600 //(11 Hours);

The function and code, as you have it now, will always return a date in the future of the date you've submitted via the call. (I can't tell from your question whether this was intended or not).

Currently, there is no "comparison" in your function. But your question indicates you want to compare the submitted date to the current date and then do something in certain cases.

If you are going to use a Unix timestamp, then there's no need for multiple formatting, compare the two dates in Unix, then format the result.

function dateCompare($submittedDate){
    //This is only needed if your submitted date is not a unix timestamp already
    $submittedDate = strtotime($submittedDate); 

    $currentDate = time(); // Creates timestamp of current datetime

    if($submittedDate < $currentDate) {
        //show something i.e. return "Support Has Expired";
    }else {
        return date('jS F Y', $submittedDate);
    }
}

echo '<li class="list-group-item">Support Expires: '.dateCompare($purchase_data['verify-purchase']['supported_until']).'</li>';
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!