<?php
$a = new \DateTime('2016-03-01', new \DateTimeZone('Europe/Warsaw'));
$b = new \DateTime('2016-03-31', new \DateTimeZone('Europe/Warsaw'));
$d = $a->diff($b);
var_dump($d);
$a1 = new \DateTime('2016-05-01', new \DateTimeZone('Europe/Warsaw'));
$b1 = new \DateTime('2016-05-31', new \DateTimeZone('Europe/Warsaw'));
$d1 = $a1->diff($b1);
var_dump($d1);
$a2 = new \DateTime('2016-04-01', new \DateTimeZone('Europe/Warsaw'));
$b2 = new \DateTime('2016-04-30', new \DateTimeZone('Europe/Warsaw'));
$d2 = $a2->diff($b2);
var_dump($d2);
$a3 = new \DateTime('2016-06-01', new \DateTimeZone('Europe/Warsaw'));
$b3 = new \DateTime('2016-06-30', new \DateTimeZone('Europe/Warsaw'));
$d3 = $a3->diff($b3);
var_dump($d3);
$a4 = new \DateTime('2016-07-01', new \DateTimeZone('Europe/Warsaw'));
$b4 = new \DateTime('2016-07-31', new \DateTimeZone('Europe/Warsaw'));
$d4 = $a4->diff($b4);
var_dump($d4);