how to convert english date format to german date format in php
Solution 1
You could use setlocale
function before calling date
function:
$newLocale = setlocale(LC_TIME, 'de_DE', 'de_DE.UTF-8');
EDIT: Quote from strftime
docs:
This example will work if you have the respective locales installed in your system.
Solution 2
If you have the Internationalization extension installed, you can use the IntlDateFormatter class.
It's really quite powerful and actually displays the date and time in the correct format for the locale you're targeting.
An example, for Germany might be:
// create format
$fmt = datefmt_create("de_DE", IntlDateFormatter::FULL, IntlDateFormatter::NONE, 'Europe/Berlin', IntlDateFormatter::GREGORIAN);
// output (using current time)
echo datefmt_format($fmt , time());
Which outputs:
Dienstag, 29. November 2011
Awais Qarni
Full stack web developer having experience in multiple technologies and frameworks including PHP (Zend, Laravel, CakePHP), Ruby (ROR), Javascript (jQuery, Backbone.JS, Ember.JS).
Updated on June 28, 2022Comments
-
Awais Qarni almost 2 years
Hi I have a date format like this
(in English format)
15. July 2011
And I want to convert it in German format like this
15. Juli 2011
How to convert date format from one laguage to other language format?
My Code is
$date = '15. July 2011'; $newLocale = setlocale(LC_TIME, 'de_DE'); $date = strftime('%d. %B %Y',$date);
But this is not converting I am getting
July
rather thanJuli