2014-02-09 2 views
5

Я пытаюсь отобразить дату на немецком языке, но она не работает. Я использую PHP с XAMPP.php - не могу получить дату на немецком языке

Это мои подходы:

function get_Datetime_Now() { 
setlocale (LC_TIME, "de_DE"); 
$tz_object = new DateTimeZone('Europe/Zurich'); 
$datetime = new DateTime(); 
$datetime->setTimezone($tz_object);  
return $datetime->format('l, d. F Y '); 
} 

echo get_Datetime_Now(); 

Это возвращает "воскресенье, 09. февраля 2014 года", но я wan't "Sonntag, 09. Februar 2014" (на немецком языке).

Я также попытался это:

setlocale(LC_TIME, "de_DE"); 
echo strftime("%A, %d. %B %Y"); 

Он также возвращает "воскресенье, 09. февраля 2014 года". Я видел много примеров в Интернете, которые не работают (по крайней мере, в моей среде).

Есть ли настройки, которые я должен проверить?

Я ценю любую помощь!

Thx заранее, Шиванский

+0

Любой шанс, что вы используете систему Windows? –

+0

что делать, если используется setlocale (LC_TIME, "de_DE.utf8"); – Psychokiller1888

+0

XAMPP - только Windows. –

ответ

8

Вы, вероятно, с помощью окна машины, которая имеет различные языковые коды в PHP, чем один на основе Unix.

Try:

setlocale(LC_TIME, 'de_DE', 'deu_deu'); 

Это первый будет пытаться установить его 'de_DE' (Linux/Unix) и имеют 'deu_deu' код в качестве запасного варианта для окон (PHP версии> = 4,3).

Example in the german PHP documentation

+0

Хмм , отметил себя как NooB. ;) На самом деле N O для этого в 'php.ini'? Вау. ;) – loveNoHate

+0

@dollarvar Я не сказал, что нет способа установить языковой стандарт в 'php.ini'. Я просто жаловался, что вы предлагали изменить «php.ini», не называя при этом никаких изменений. –

+0

Да, я сделал сначала, но нацелился на что-то с датой и некоторыми локальными настройками (но это был «часовой пояс», там -1 пришел;) и опубликовал это, но я нашел этот пост: http: // stackoverflow. com/questions/5075145/php-locale-configuration-in-php-ini сделал быстрый google и сдался. ;) (y) – loveNoHate

1

Вы можете попробовать:

setlocale(LC_TIME, 'de_DE', 'de_DE.UTF-8'); 
echo strftime("%A, %d. %B %Y"); 

работал для меня

2

Я просто комментарий поблагодарить Tim Bodeit, и если кто-то ищет, чтобы установить месяц на испанском языке, это код, который работал со мной:

setlocale(LC_TIME, 'es_ES', 'esp_esp'); 

 Смежные вопросы

  • Нет связанных вопросов^_^