Display your dates as Today, Yesterday etc in PHP

Gary
CERTIFIED EXPERT
Published:
Build an array called $myWeek which will hold the array elements Today, Yesterday and then builds up the rest of the week by the name of the day going back 1 week.

 
<?php
                      $myWeek=array("Today","Yesterday");
                      
                      for($i=2;$i<7;$i++){
                      	array_push($myWeek,date('l',strtotime('-'.$i.' day')));
                      }

Open in new window


function getDayName($myDate,$myWeek){
                      	global $myWeek; // globalise the $myWeek array
                      	if($myDate> strtotime('-7 day')){
                      		return $myWeek[(time()-$myDate)/(60*60*24)];
                      	}
                      	else{
                      		return date('d/m/Y',$myDate); // else just return the date as a normal date string
                      	}
                      }

Open in new window


Then you just need to pass your date to the function.
If it is already in timestamp format then:
 
$dayName = getDayName($yourdatetime);

Open in new window


Otherwise convert it to a timestamp:
$dayName = getDayName(strtotime($yourdatetime));

Open in new window

0
2,971 Views
Gary
CERTIFIED EXPERT

Comments (0)

Have a question about something in this article? You can receive help directly from the article author. Sign up for a free trial to get started.