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.
$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. $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>";
}
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
Author & Instructor at plus2net
I write and maintain practical tutorials on Python, PHP, SQL, JavaScript, HTML, jQuery, and web development at plus2net. The tutorials focus on clear explanations, working examples, and code that readers can test and adapt while learning.
| 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 | |