2015-10-14 2 views
1

Я использую этот простой скрипт для проверки на моем хосте, который работает на php версии 5.6. Сценарий дает выход «Среда» вместо «Woensdag» (голландский) Почему день недели по-прежнему на английском, а не на голландском? Это потому, что сервер настроен неправильно?Как установить дату и время на голландский

<?php 
/* Set locale to Dutch */ 
date_default_timezone_set("Europe/Amsterdam"); 
setlocale(LC_ALL, 'nl_NL'); 

echo date("l"); // output: Wednesday instead off "Woensdag" (dutch) 

?> 

ответ

2

К сожалению, дата не является многоязычной. Если вы хотите отформатировать язык на другом языке, вам нужно установить языковой стандарт (как и в вашем примере) и использовать strftime

Параметры форматирования для strftime do приводят к «Woensdag» (или «mittwoch на немецком языке и т. Д.):

setlocale(LC_TIME, 'en_EN'); 
echo strftime('%A', time()); // for a Wednesday will output: Wednesday 
setlocale(LC_TIME, 'nl_NL'); 
echo strftime('%A', time()); // for a Wednesday will output: woensdag 

Если вы не хотите аль много вещей, чтобы быть под влиянием setlocale вы можете захотеть, чтобы указать, что вы делаете это только для времени (как в приведенном выше примере) Читать на setlocale для получения дополнительной информации:. http://php.net/manual/en/function.setlocale.php

Имейте в виду, что вам необходимо иметь локальные сети на вашем компьютере чтобы это работало. Проверьте с помощью locale -a на linux. setlocale имеет возвращаемое значение. Если это ложь, что-то пошло не так, и вам, скорее всего, не хватает указанной локали.

+0

К сожалению, я повторяю strftime, но все еще на английском языке: 'echo strftime ("% A% e% B% Y"); дает мне среду 14 октября 2015 года – nuet

+2

У вас есть локаль nl_NL, установленная на вашем компьютере? – hoppa

+0

Ну, я думаю, мне нужно связаться с моим хозяином. Проблема возникла при обновлении с версии php 5.3 до 5.6 – nuet

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

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