الفرق بين المراجعتين ل"Ruby/Time/new"

من موسوعة حسوب
< Ruby‏ | Time
اذهب إلى التنقل اذهب إلى البحث
ط (مراجعة وتدقيق.)
 
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>new‎</code> الخاص بالصنف <code>Time</code> في روبي}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: التابع <code>Time.new‎</code> في روبي}}</noinclude>
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Time]]
 
[[تصنيف: Ruby Time]]
يعيد التابع <code>new</code> [[Ruby/Time|توقيت]]ا جديدا.  
+
ينشئ التابع <code>new</code> [[Ruby/Time|توقيتً]]ا جديدًا. يتم ضبطه عند وقت النظام الحالي إذا لم يُمرر أي وسيط.  
  
يتم ضبطه عند وقت النظام الحالي إذا لم يُمرر أي وسيط.
+
'''ملحوظة''': سيستخدم الكائن الجديد الدقة المتوفرة على ساعة النظام (system clock)، وقد يتضمن كسور الثواني أو لا.
 
 
'''ملحوظة''':
 
 
 
سيستخدم الكائن الجديد الدقة المتوفرة على ساعة النظام (system clock)، وقد يتضمن كسور الثواني.
 
  
 
في حال تمرير وسيط واحد أو أكثر، سيتم ضبط التوقيت عند الوقت المحدد.
 
في حال تمرير وسيط واحد أو أكثر، سيتم ضبط التوقيت عند الوقت المحدد.
 
قد يتضمن الوسيط <code>[[Ruby/Time/sec|sec]]</code>  (انظر فقرة البنية العامة) جزءا عشريا إن كان [[Ruby/Rational|عدد جذري]]ا.
 
 
يمثل <code>[[Ruby/Time/utc_offset|utc_offset]]</code> الفرق مع التوقيت العالمي الموحد (UTC). ويمكن أن يكون [[Ruby/String|سلسلة نصية]] مثل "<code>+09: 00</code>"، أو عددًا من الثواني مثل <code>32400</code>.
 
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">new → time
 
<syntaxhighlight lang="ruby">new → time
سطر 21: سطر 13:
 
==المعاملات==
 
==المعاملات==
 
===<code>year‎</code>===
 
===<code>year‎</code>===
السنة
+
عدد يمثِّل السنة.
 
===<code>month‎</code>===
 
===<code>month‎</code>===
الشهر
+
عدد بين 1 و 12 يمثِّل الشهر، أو ثلاثة أحرف أجنبية تمثل اسم الشهر.
 
===<code>day‎</code>===
 
===<code>day‎</code>===
اليوم
+
عدد يمثِّل اليوم.
 
===<code>hour‎</code>===
 
===<code>hour‎</code>===
الساعة
+
عدد بين 0 و 23 يمثِّل الساعة.
 
===<code>min‎</code>===
 
===<code>min‎</code>===
الدقيقة
+
عدد يمثِّل الدقيقة.
 
===<code>sec‎</code>===
 
===<code>sec‎</code>===
الثانية
+
عدد يمثِّل الثانية. قد يتضمن جزءًا عشريًّا إن كان [[Ruby/Rational|عددًا جذريً]]ا.
 
===<code>utc_offset‎</code>===
 
===<code>utc_offset‎</code>===
فارق التوقيت مع التوقيت العالمي الموحد
+
فارق التوقيت مع التوقيت العالمي الموحد، ويمكن أن يكون [[Ruby/String|سلسلة نصية]] مثل "<code>+09: 00</code>"، أو عددًا من الثواني مثل <code>32400</code>.
  
==القيمة المُعادة==
+
==القيمة المعادة==
يعيد التابع <code>new</code> [[Ruby/Time|توقيت]]ا جديدا.  
+
يعاد [[Ruby/Time|توقيتٌ]] جديدٌ.
  
 
==أمثلة==
 
==أمثلة==
سطر 59: سطر 51:
 
p((t6-t5)/3600.0)                          #=> 1.95
 
p((t6-t5)/3600.0)                          #=> 1.95
 
p((t8-t7)/3600.0)                          #=> 13.416666666666666‎</syntaxhighlight>
 
p((t8-t7)/3600.0)                          #=> 13.416666666666666‎</syntaxhighlight>
==انظر أيضا==
+
==انظر أيضًا==
* التابع <code>[[Ruby/Time/mktime|mktime]]</code>: التابع <code>mktime</code> مشابه لـ <code>[[Ruby/Time/gm|gm]]</code>، ولكنه يفسر القيم في إطار المنطقة الزمنية المحلية.
+
* التابع <code>[[Ruby/Time/at|at]]</code>: ينشئ [[Ruby/Time|توقيت]]ا جديدًا انطلاقًا من معلومات الوقت المٌمرَّرة إليه.
* التابع <code>[[Ruby/Time/now|now]]</code>: يُنشئ التابع <code>now</code> [[Ruby/Time|توقيت]]ا جديدا للوقت الحالي.
+
* التابع <code>[[Ruby/Time/mktime|mktime]]</code>: ينشئ توقيتًا جديدًا بشكل مشابه للتابع <code>[[Ruby/Time/gm|gm]]</code> باستثناء أنَّه يفسر القيم في إطار المنطقة الزمنية المحلية.
 +
* التابع <code>[[Ruby/Time/now|now]]</code>: يُنشئ [[Ruby/Time|توقيتً]]ا جديدًا للوقت الحالي.
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Time.html#method-c-new قسم التابع new‎ في الصنف Time‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/Time.html#method-c-new قسم التابع new‎ في الصنف Time‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 12:03، 6 ديسمبر 2018

ينشئ التابع new توقيتًا جديدًا. يتم ضبطه عند وقت النظام الحالي إذا لم يُمرر أي وسيط.

ملحوظة: سيستخدم الكائن الجديد الدقة المتوفرة على ساعة النظام (system clock)، وقد يتضمن كسور الثواني أو لا.

في حال تمرير وسيط واحد أو أكثر، سيتم ضبط التوقيت عند الوقت المحدد.

البنية العامة

new  time
new(year, month=nil, day=nil, hour=nil, min=nil, sec=nil, utc_offset=nil)  time

المعاملات

year‎

عدد يمثِّل السنة.

month‎

عدد بين 1 و 12 يمثِّل الشهر، أو ثلاثة أحرف أجنبية تمثل اسم الشهر.

day‎

عدد يمثِّل اليوم.

hour‎

عدد بين 0 و 23 يمثِّل الساعة.

min‎

عدد يمثِّل الدقيقة.

sec‎

عدد يمثِّل الثانية. قد يتضمن جزءًا عشريًّا إن كان عددًا جذريًا.

utc_offset‎

فارق التوقيت مع التوقيت العالمي الموحد، ويمكن أن يكون سلسلة نصية مثل "+09: 00"، أو عددًا من الثواني مثل 32400.

القيمة المعادة

يعاد توقيتٌ جديدٌ.

أمثلة

مثال على استخدام التابع 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‎

انظر أيضًا

  • التابع at: ينشئ توقيتا جديدًا انطلاقًا من معلومات الوقت المٌمرَّرة إليه.
  • التابع mktime: ينشئ توقيتًا جديدًا بشكل مشابه للتابع gm باستثناء أنَّه يفسر القيم في إطار المنطقة الزمنية المحلية.
  • التابع now: يُنشئ توقيتًا جديدًا للوقت الحالي.

مصادر