Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- irb(main):001:0> start = Time.now
- => Thu Nov 05 01:02:54 -0800 2009
- irb(main):002:0> Time.now - start
- => 25.239
- irb(main):003:0> (Time.now - start).duration
- => "25 seconds"
- 23 minutes and 35 seconds
- 1 hour and 33 minutes
- 2 days and 3 hours
- class Numeric
- def duration
- secs = self.to_int
- mins = secs / 60
- hours = mins / 60
- days = hours / 24
- if days > 0
- "#{days} days and #{hours % 24} hours"
- elsif hours > 0
- "#{hours} hours and #{mins % 60} minutes"
- elsif mins > 0
- "#{mins} minutes and #{secs % 60} seconds"
- elsif secs >= 0
- "#{secs} seconds"
- end
- end
- end
- require 'date'
- start_time = Time.now
- end_time = Time.now
- time_diff = end_time - start_time
- hours,minutes,seconds,frac = Date.day_fraction_to_time(time_diff)
- puts "Time elapsed: #{hours} hours, #{minutes} minutes and #{seconds} seconds"
- time_difference = current_time - old_time
- def seconds_fraction_to_time(time_difference)
- days = hours = mins = 0
- mins = (seconds / 60).to_i
- seconds = (seconds % 60 ).to_i
- hours = (mins / 60).to_i
- mins = (mins % 60).to_i
- days = (hours / 24).to_i
- hours = (hours % 24).to_i
- return [days,hours,mins,seconds]
- end
- if(days > 0)
- return "#{days} Days #{hours} Hours"
- else
- return "#{hours} Hours #{mins} Minutes"
- end
Add Comment
Please, Sign In to add comment