I need to use PHP DateTime to get the first day of the current year. I\'ve tried:
$year = new DateTime(\'first day of this year\');
var_dump($year);
<
If you want to get first day of current year just use this code
echo date("l", strtotime('first day of January '.date('Y') ));
Your relative date format 'first day of this year'
is correct by returning the first day of the month because of the definition of first day of
:
Sets the day of the first of the current month. This phrase is best used together with a month name following it. (See PHP-doc)
To get the first day of the current year with the relative format you can use something like this:
'first day of January ' . date('Y')
You can get the current date and then set day and month to 1:
$year = new DateTime();
$year->setDate($year->format('Y'), 1, 1);
Optionally, you can set the time to midnight:
$year->setTime(0, 0, 0);
Try this:
$dt = date('m/d/Y',time());
echo 'First day : '. date("01/01/Y", strtotime($dt)).' - Last day : '. date("m/t/Y", strtotime($dt));
echo date('l',strtotime(date('Y-01-01')));