<?php
date_default_timezone_set('UTC');
$date = new DateTime(null, new DateTimeZone('UTC'));
$date->setTime(0,0,0);
$date->modify('next month');
$date->modify('last day of this month');
$date->setDate(2014, 1, 21);
// This should be 21st Jan 2014
echo $date->format('Y-m-d');
Warning: DateTime::modify(): Failed to parse time string (last day of this month) at position 9 (o): The timezone could not be found in the database in /in/H3jZY on line 9
2014-01-21
Output for 5.1.0 - 5.1.6
Fatal error: Class 'DateTime' not found in /in/H3jZY on line 6
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Fatal error: Call to undefined function date_default_timezone_set() in /in/H3jZY on line 4
Process exited with code 255.
Output for 4.4.5 - 4.4.9
Fatal error: Call to undefined function: date_default_timezone_set() in /in/H3jZY on line 4
Process exited with code 255.
Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.4
Fatal error: Call to undefined function: date_default_timezone_set() in /in/H3jZY on line 4
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Call to undefined function: date_default_timezone_set() in /in/H3jZY on line 4