2009-08-04 4 views
15

В Perl вы можете сделать:Как мне отформатировать дату до mm/dd/yyyy в Ruby?

my $current_time = DateTime->now(); 
my $mdy = $current_time->mdy("/"); 

Что это самый простой способ сделать это в Ruby?

+2

Для чего это стоит, если вы хотите, чтобы сделать именно это в Perl (то есть, вы больше не хотите использовать DateTime), мне кажется, что проще использовать функцию 'strftime' в POSIX-модуле Perl. Подробнее см. Здесь: http://perltraining.com.au/tips/2009-02-26.html. – Telemachus

ответ

39

strftime метод может быть использован для времени формат:

Time.now.strftime("%m/%d/%Y") 
+2

+1 Однако обратите внимание, что 'strftime' также доступен на Perl, а http://search.cpan.org/perldoc/DateTime имеет множество функций, помимо простого примера здесь. –

+1

+1, хотя это отстой, что «strftime» - такое страшное имя. –

+1

strftime - это имя базовой библиотеки C, которая реализует эти строки формата. Это стандартное имя на всех языках для данного формата даты. – mpeters

3

Я написал драгоценный камень, чтобы помочь с датами форматирования и сохраняя свои взгляды DRY (не имея STRFTIME каждый раз, когда вы хотите форматировать даты).

Проверьте это по адресу: http://github.com/platform45/easy_dates

+0

Очень полезно, спасибо –

1

Вы можете просто использовать %D с strftime методом

> Time.now.strftime("%D") 
=> "11/24/14" # mm/dd/yy 
-1
my $current_time = DateTime->now(); 

my_current_time = DateTime.now 

my $mdy = $current_time->mdy("/"); 

my_mdy = my_current_time.strftime("%m/%d/%Y") 
Смежные вопросы