I googled quite a bit and tried to find out why my german date won't put out "03. März 2016" but instead always prints "03. M�rz 2016"
<?php
$event_date_format = DateTime::createFromFormat('Ymd', $event_date[0]);
setlocale(LC_TIME, 'de_DE', 'de_DE.UTF-8');
echo strftime("%A, %d. %B %Y", $event_date_format->getTimestamp()); // Donnerstag, 03. M�rz 2016
echo $event_date_format->format('F'); // March
?>
Looks like this:
Umlauts work correctly and fine for the rest of the page.
I was able to fix it with
$fmt = new IntlDateFormatter('de_DE' ,IntlDateFormatter::FULL, IntlDateFormatter::NONE, 'Europe/Berlin', IntlDateFormatter::GREGORIAN);
$fmt->setPattern("MMMM");
$event_date_format = DateTime::createFromFormat('Ymd', $event_date[0]);
echo $fmt->format($event_date_format);