w3resource

PHP Date Exercises : Add/subtract the number of days from a particular date

PHP date: Exercise-16 with Solution

Write a PHP script to add/subtract the number of days from a particular date.

Sample Solution:

PHP Code:

<?php
$dt='2011-01-01';
echo 'Original date : '.$dt."\n";
$no_days = 40;
$bdate = strtotime("-".$no_days." days", strtotime($dt));
$adate = strtotime("+".$no_days." days", strtotime($dt));
echo 'Before 40 days : '.date("Y-m-d", $bdate)."\n";
echo 'After  40 days : '.date("Y-m-d", $adate)."\n";
?>

Sample Output:

Original date : 2011-01-01                                  
Before 40 days : 2010-11-22                                 
After  40 days : 2011-02-10

Flowchart :

Flowchart: Add/subtract the number of days from a particular date

PHP Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a PHP script to check if a date is a weekend or not.
Next: Write a PHP function to get start and end date of a week (by week number) of a particular year.

What is the difficulty level of this exercise?



PHP: Tips of the Day

PHP represents "no value" with the null keyword. It's somewhat similar to the null pointer in C-language and to the NULL value in SQL.

Setting the variable to null:

Example:

$nullvar = null; // directly
function doSomething() {} // this function does not return anything
$nullvar = doSomething(); // so the null is assigned to $nullvar

Checking if the variable was set to null:

if (is_null($nullvar)) { /* variable is null */ }
if ($nullvar === null) { /* variable is null */ }

Null vs undefined variable

If the variable was not defined or was unset then any tests against the null will be successful but they will also generate a Notice: Undefined variable: nullvar:

$nullvar = null;
unset($nullvar);
if ($nullvar === null) { /* true but also a Notice is printed */ }
if (is_null($nullvar)) { /* true but also a Notice is printed */ }

Therefore undefined values must be checked with isset:

if (!isset($nullvar)) { /* variable is null or is not even defined */ }