读书人

ruby 时隔日期处理

发布时间: 2012-12-26 14:39:29 作者: rapoo

ruby 时间日期处理
1.当前时间
Time.new 或Time.now
2.Time类的方法mktime(同义方法是local方法)来根据传入的参数生成时间对象,并且它使用的是当前的时间

   now = Time.now => Sat Mar 05 17:09:55 +0800 2011   now.to_date => Sat, 05 Mar 2011   now.to_s => "Sat Mar 05 17:09:55 +0800 2011"   now.to_s(:short) => "05 Mar 17:09"   now.to_s(:long) => "March 05, 2011 17:09"   now.to_s(:db) => "2011-03-05 17:09:55"   now.to_s(:rfc822) => "Sat, 05 Mar 2011 17:09:55 +0800"   now.at_beginning_of_day => Sat Mar 05 00:00:00 +0800 2011   now.at_beginning_of_month => Tue Mar 01 00:00:00 +0800 2011   now.at_beginning_of_week => Mon Feb 28 00:00:00 +0800 2011   now.at_beginning_of_quarter => Sat Jan 01 00:00:00 +0800 2011   now.at_beginning_of_year => Sat Jan 01 00:00:00 +0800 2011   now.at_midnight => Sat Mar 05 00:00:00 +0800 2011   now.change(:hour => 13) => Sat Mar 05 13:00:00 +0800 2011   now.last_month => Sat Feb 05 17:09:55 +0800 2011   now.last_year => Fri Mar 05 17:09:55 +0800 2010   now.midnight => Sat Mar 05 00:00:00 +0800 2011   now.monday => Mon Feb 28 00:00:00 +0800 2011   now.months_ago(2) => Wed Jan 05 17:09:55 +0800 2011   now.months_ago(1) => Sat Feb 05 17:09:55 +0800 2011   now.months_ago(3) => Sun Dec 05 17:09:55 +0800 2010   now.months_since(2) => Thu May 05 17:09:55 +0800 2011   now.next_week => Mon Mar 07 00:00:00 +0800 2011   now.next_year => Mon Mar 05 17:09:55 +0800 2012   now.seconds_since_midnight => 61795.249   now.since(7200) => Sat Mar 05 19:09:55 +0800 2011   now.tomorrow => Sun Mar 06 17:09:55 +0800 2011   now.years_ago(2) => Thu Mar 05 17:09:55 +0800 2009   now.years_since(2) => Tue Mar 05 17:09:55 +0800 2013   now.yesterday=> Fri Mar 04 17:09:55 +0800 2011   now.advance(:days => 30) => Mon Apr 04 17:09:55 +0800 2011   Time.days_in_month(2)  => 28   Time.days_in_month(2,2000) => 29

这些只是其中的一部分,如果想知道更多的函数可以参看rails api。你还可以参考下面这篇文章http://blog.zool.it/posts/rails-in-the-method-of-operation-of-time,他最后提到的by_star这个插件是用来做时间搜索的,我之前也用过,你可以去用下。













读书人网 >Ruby Rails

热点推荐