2011-01-16 5 views
0

У меня есть некоторые даты, которые выводятся предыдущим javascript и в скрытые текстовые поля.Изменение формата выделенного календаря

Мне нужно преобразовать его в другой формат (дд/мм/гггг) и я не совсем уверен, как это сделать.

Значения динамические, поэтому я не уверен, сколько их будет, поэтому я думаю, что нужно будет пропустить цикл?

Мне нужно преобразовать этот

Wed Jan 19 2011 00:00:00 GMT+1100 (EST),Thu Jan 20 2011 00:00:00 GMT+1100 (EST),Fri Jan 21 2011 00:00:00 GMT+1100 (EST),Sat Jan 22 2011 00:00:00 GMT+1100 (EST),Sun Jan 23 2011 00:00:00 GMT+1100 (EST) 

в

19/01/2011,20/01/2011,21/01/2011,22/01/2011,23/01/2011 

Любая помощь будет большим.

Спасибо,

ответ

4
$str = 'Wed Jan 19 2011 00:00:00 GMT+1100 (EST),Thu Jan 20 2011 00:00:00 GMT+1100 (EST),Fri Jan 21 2011 00:00:00 GMT+1100 (EST),Sat Jan 22 2011 00:00:00 GMT+1100 (EST),Sun Jan 23 2011 00:00:00 GMT+1100 (EST)'; 

$dates = explode(',', $str); 
$result = array(); 
foreach ($dates as $date) { 
    $result[] = date('d/m/Y', strtotime($date)); 
} 
echo implode(',', $result); 

Кроме того, обратите внимание, что этот код зависит от местного часового пояса. Так что, если ваш часовой пояс не GMT+11, то вы можете изменить его с помощью date_default_timezone_set('Australia/Canberra');, например

+0

Awesome ... Спасибо, кучи – Cecil

1
<?php 
echo date('d/m/Y', strtotime("Wed Jan 19 2011 00:00:00 GMT+1100 (EST)")); 
1

Вы можете сделать что-то вроде этого

$str='Wed Jan 19 2011 00:00:00 GMT+1100 (EST)'; 
$t=strtotime($str); 
echo strftime('%d/%m/%Y', $t); 

Заметим, однако, что strtotime будет использовать системный часовой пояс для преобразования времени - я нахожусь в Великобритании и на этот раз, когда превратили в GMT, будет на самом деле отображать " 18/01/2011. Просто то, что нужно знать! Из инструкции:

Каждый вызов функции даты/времени сгенерирует E_NOTICE, если зона времени не является действительным, и/или E_STRICT или E_WARNING сообщение, если с помощью настроек системы или TZ окружающая среда переменная. См. Также date_default_timezone_set()

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