التابع new
الخاص بالصنف Time
في روبي
يعيد التابع new
توقيتا جديدا.
يتم ضبطه عند وقت النظام الحالي إذا لم يُمرر أي وسيط.
ملحوظة:
سيستخدم الكائن الجديد الدقة المتوفرة على ساعة النظام (system clock)، وقد يتضمن كسور الثواني.
في حال تمرير وسيط واحد أو أكثر، سيتم ضبط التوقيت عند الوقت المحدد.
قد يتضمن الوسيط sec
(انظر فقرة البنية العامة) جزءا عشريا إن كان عدد جذريا.
يمثل utc_offset
الفرق مع التوقيت العالمي الموحد (UTC). ويمكن أن يكون سلسلة نصية مثل "+09: 00
"، أو عددًا من الثواني مثل 32400
.
البنية العامة
new → time
new(year, month=nil, day=nil, hour=nil, min=nil, sec=nil, utc_offset=nil) → time
المعاملات
year
السنة
month
الشهر
day
اليوم
hour
الساعة
min
الدقيقة
sec
الثانية
utc_offset
فارق التوقيت مع التوقيت العالمي الموحد
القيمة المُعادة
يعيد التابع new
توقيتا جديدا.
أمثلة
مثال على استخدام التابع new
:
a = Time.new #=> 2007-11-19 07:50:02 -0600
b = Time.new #=> 2007-11-19 07:50:02 -0600
a == b #=> false
"%.6f" % a.to_f #=> "1195480202.282373"
"%.6f" % b.to_f #=> "1195480202.283415"
Time.new(2008,6,21, 13,30,0, "+09:00") #=> 2008-06-21 13:30:00 +0900
# A trip for RubyConf 2007
t1 = Time.new(2007,11,1,15,25,0, "+09:00") # JST (Narita)
t2 = Time.new(2007,11,1,12, 5,0, "-05:00") # CDT (Minneapolis)
t3 = Time.new(2007,11,1,13,25,0, "-05:00") # CDT (Minneapolis)
t4 = Time.new(2007,11,1,16,53,0, "-04:00") # EDT (Charlotte)
t5 = Time.new(2007,11,5, 9,24,0, "-05:00") # EST (Charlotte)
t6 = Time.new(2007,11,5,11,21,0, "-05:00") # EST (Detroit)
t7 = Time.new(2007,11,5,13,45,0, "-05:00") # EST (Detroit)
t8 = Time.new(2007,11,6,17,10,0, "+09:00") # JST (Narita)
p((t2-t1)/3600.0) #=> 10.666666666666666
p((t4-t3)/3600.0) #=> 2.466666666666667
p((t6-t5)/3600.0) #=> 1.95
p((t8-t7)/3600.0) #=> 13.416666666666666
انظر أيضا
- التابع
mktime
: التابعmktime
مشابه لـgm
، ولكنه يفسر القيم في إطار المنطقة الزمنية المحلية. - التابع
now
: يُنشئ التابعnow
توقيتا جديدا للوقت الحالي.