On Feb 18, 3:33   鮮 
> Hello everyone!
>
> I have a question :)
>
> When I run this command :
> puts Time.now
> I got => 2009-02-18T14:31:17-08:00
>
> But if then I do this :
> require 'date'; expiration_date = DateTime.new(2008, 02, 18, 12, 12,
> 13); puts expiration_date
> I got => 2008-02-18T12:12:13+00:00
>
> My question is : What is the "-08:00" ? I assume it's the timezone? Then
> how to set my expiration_date variable to have the same timezone?
>
> Thank you!
> --
> Posted viahttp://www.ruby-forum.com/.

DateTime.new is an alias for DateTime.civil.  You can see its
documentation here: http://www.ruby-doc.org/stdlib/libdoc/date/rdoc/classes/DateTime.html#M000400

You're right that "-08:00" is something like a timezone.  It's the
offset from UTC (Coordinated Universal Time) and it's determined by
your timezone.  Anyway, as you can see in the documentation, there's
an extra argument after the one for seconds where you can set your
offset.  It's set as a fraction of a day, so in your case you'd want
to do something like this:

expiration_date = DateTime.new(2008, 02, 18, 12, 12, 13, -8/24.0)

HTH,
Chris