PHP: How to use `IntlDateFormatter` for local month names
Published:
Here's how to get PHP to output a date with a full local month name.
setlocale(LC_ALL, 'no_NB.utf-8', 'nor'); // For other stuff
Locale::setDefault('no_NB.utf-8'); // For IntlDateFormatter
$f = new IntlDateFormatter(null, null, null, null, null, 'd. MMMM y');
echo $f->format(new DateTime("2013-01-01"));
// Outputs: 1. januar 2013
In this case I just use a hardcoded norwegian long date format, but check out the IntlDateFormatter
constructor and you will find various date and time constants for various formats.
📝 This requires PHP version >= 5.3
and the intl.so
extension active. If on
Dreamhost you can do this by adding the following to your ~/.php/5.3/phprc
:
extension = intl.so