Когда я хочу показать время в timezone
по умолчанию, нет проблем, например:
Friday, 12 de December del 2014
Но проблема существует, когда я хочу показать ее на другом языке (например, в другом часовом поясе), например, на Spanish
, он выводится следующим образом:
viernes, 12 de diciembre del 2014
Формат времени, который я использую: "%A, %d de %B del %Y"
Я хотел бы показать следующее: Viernes, 12 de Diciembre del 2014
Я попытался решить это с помощью ucfirst()
и ucwords()
, но я думаю, что они не являются хорошими решениями для этого, потому что это Viernes, 12 De Diciembre Del 2014
: Viernes, 12 De Diciembre Del 2014
Ну, наконец, после поиска магического метода, который отвечает на мой вопрос, у меня не было другой альтернативы, а не использования предложения пользователя Джона Конде.
Вот метод, который я использовал:
$default_local_date = ucwords(utf8_encode(strftime("%A, %d de %B del %Y")));
$date_connectors_capital = array('De', 'Del');
$date_connectors_lower = array('de', 'del');
$local_date = str_replace($date_connectors_capital, $date_connectors_lower, $default_local_date);
echo $local_date;
str_replace()
setlocale(LC_TIME, 'Spanish');
затем я вызываю его с помощьюutf8_encode(strftime("%A, %d de %B del %Y"))