Getting yesterday and previous days date values

Calculate previous dates with DateTimeImmutable

For calendar-day calculations, using DateTimeImmutable and relative modification is clearer than subtracting a fixed number of seconds.

$today = new DateTimeImmutable('today');
for ($i = 1; $i <= 7; $i++) {
    echo $today->modify("-$i day")->format('Y-m-d D') . "<br>";
}

This current example appears first; the detailed examples below are retained and modernized for comparison and additional use cases.

You must have seen how to get today date by using date function. By changing the date value we can get the dates of yesterday. Same way we can extend this to get date values of last 7 days. Or we can extend this to get dates between any to differences.

Let us find out the date value of yesterday.
$m= date("m"); // Month value
$de= date("d"); //today's date
$y= date("Y"); // Year value
echo date('d-m-y:D', mktime(0,0,0,$m,($de-1),$y));
Last seven days date value we can find out by using a for loop. Here is the output of the code.

30-09-26:Wed
29-09-26:Tue
28-09-26:Mon
27-09-26:Sun
26-09-26:Sat
25-09-26:Fri
24-09-26:Thu
23-09-26:Wed
22-09-26:Tue
21-09-26:Mon
20-09-26:Sun
19-09-26:Sat
18-09-26:Fri
17-09-26:Thu
16-09-26:Wed
15-09-26:Tue

Here is the code.
$m= date("m");
$de= date("d");
$y= date("Y");
for($i=0; $i<=15; $i++){
echo date('d-m-y:D',mktime(0,0,0,$m,($de-$i),$y)); 
echo "<br>";
}

Using strtotime()

We can create unixtime stamp from text string by using strtotime()
for($i=0; $i<=15; $i++){

echo date('m-d-Y: D',strtotime("$i day"))."<br>";

}
Output is here
09-30-2026: Wed
10-01-2026: Thu
10-02-2026: Fri
10-03-2026: Sat
10-04-2026: Sun
10-05-2026: Mon
10-06-2026: Tue
10-07-2026: Wed
10-08-2026: Thu
10-09-2026: Fri
10-10-2026: Sat
10-11-2026: Sun
10-12-2026: Mon
10-13-2026: Tue
10-14-2026: Wed
10-15-2026: Thu
PHP Date Functions Adding Date by using DateInterval Displaying dropdown list to select Month Year & Date


Subscribe to our YouTube Channel here



plus2net.com







bhanu

30-09-2009

thank you for help.it very help
siswoutomo

28-12-2009

Very good this post, thank lot of
James

21-04-2010

Does this work if the date is 4th of January (for example)
smo

02-05-2010

Yes this will work perfectly. Try with March 1st of 2008 also. For testing you need to change the date of your PC or server.
kalpana

15-01-2013

thanks you so much.It was so helpful




PHP video Tutorials
✖
We use cookies to improve your browsing experience. . Learn more
HTML MySQL PHP JavaScript ASP Photoshop Articles Contact us
© 2000-2026 plus2net.com All rights reserved worldwide Privacy Policy Disclaimer