فدى الرسول
زيزوومى مبدع
غير متصل
من فضلك قم بتحديث الصفحة لمشاهدة المحتوى المخفي
بسيطة بإذن الله ,,
أوامر حساب الوقت ,,
timerinit & timerdiff
أوامر بسيطة وجميلة ,, ورائعة ,,
ومفيدة أيضا ,,
وأحلى شي استغلالها في الحلقات :y::y:
لا توجد لها صيغة ,,
كالتالي
وكود:[font=times new roman][size=3][color=navy]timerinit[/color] [color=red]()[/color][/size][/font]
الفكرة سهلة ,,كود:[color=navy]timerdiff[/color] [color=red]([/color][color=darkred]$timestamp[/color][color=red])[/color]
تضع الأمر الأول اللي هو
timerinit = أمر بدء الحساب
ثم تضع الأمر الثاني ,, في مكان معين في السكربت ,,
timerdiff = وهو أمر حساب الوقت بين وقت الأمر الأول والثاني ,,وتضع بين القوسين متغير الأمر الأول !!
ملاحظة :: النتيجة بالملي ثانية :d:
ثانية = 1000 ملي ثانية
المثال رح يوضع كل شي ,,
كود:[color=#aa0000]$tm[/color] [color=#ff0000]=[/color] [color=#000090]timerinit[/color] [color=#ff0000]([/color][color=#ff0000])[/color] [color=#000090]sleep[/color] [color=#ff0000]([/color][color=#ac00a9]1[/color][color=#ac00a9]0[/color][color=#ac00a9]0[/color][color=#ac00a9]0[/color][color=#ff0000])[/color] [color=#aa0000]$time[/color] [color=#000090]call[/color]ymlp=[/color] [color=#000090]timerdiff[/color] [color=#000090]call[/color]ymlp([/color][color=#aa0000]$tm[/color][color=#000090]call[/color]ymlp)[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]"الوقت المستغرق بالملي ثانية"[/color][color=#ff0000],[/color][color=#aa0000]$time[/color][color=#ff0000])[/color] [color=#0000ff]exit[/color]
مثال آخر قد يوضح المسألة أكثر
جرب انتظر ,, في النقر على الزر وشوف ,,
كود:[color=#aa0000]$tm[/color] [color=#ff0000]=[/color] [color=#000090]timerinit[/color] [color=#ff0000]([/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]""[/color][color=#ff0000],[/color][color=#9999cc]"إضغط على موافق"[/color][color=#ff0000])[/color] [color=#aa0000]$time[/color] [color=#ff0000]=[/color] [color=#000090]timerdiff[/color] [color=#ff0000]([/color][color=#aa0000]$tm[/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]"الوقت المستغرق بالملي ثانية"[/color][color=#ff0000],[/color][color=#aa0000]$time[/color][color=#ff0000])[/color] [color=#0000ff]exit[/color]
يمكن عمل أكثل من timediff لـ timerinit واحد ,,
مثال ::
كود:[color=#aa0000]$tm[/color] [color=#ff0000]=[/color] [color=#000090]timerinit[/color] [color=#ff0000]([/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]""[/color][color=#ff0000],[/color][color=#9999cc]"إضغط على موافق"[/color][color=#ff0000])[/color] [color=#aa0000]$time[/color] [color=#ff0000]=[/color] [color=#000090]timerdiff[/color] [color=#ff0000]([/color][color=#aa0000]$tm[/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]"الوقت المستغرق بالملي ثانية"[/color][color=#ff0000],[/color][color=#aa0000]$time[/color][color=#ff0000])[/color] [color=#aa0000]$e[/color] [color=#ff0000]=[/color] [color=#000090]timerdiff[/color] [color=#ff0000]([/color][color=#aa0000]$tm[/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]"الوقت المستقرق من بداية السكربت حتى الآن بالملي ثانية"[/color][color=#ff0000],[/color][color=#aa0000]$e[/color][color=#ff0000])[/color] [color=#aa0000]$w[/color] [color=#ff0000]=[/color] [color=#000090]timerdiff[/color] [color=#ff0000]([/color][color=#aa0000]$tm[/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]"الوقت المستقرق من بداية السكربت حتى الآن بالملي ثانية"[/color][color=#ff0000],[/color][color=#aa0000]$w[/color][color=#ff0000])[/color]
طيب ما علاقة الأمر round في أمر حساب الوقت ؟ !!!! :d:
لما تحسب الوقت ,, يخرج لك كذا
84542.45454566456464655487
وما يصلح تخرجه كذا !!! للمستخدم !!
مستحيل نخرج الأمر للمستخدم بالملي ثانية ,, لما يشوفه يصير وجهه كذا
فماذا نفعل ,,
بما إن الثانية = 1000 ملي ثانية ,,
نحوله أولا للثانية ,,
نقسم الناتج على 1000
حسب المثال التالي
كود:[color=#aa0000]$tm[/color] [color=#ff0000]=[/color] [color=#000090]timerinit[/color] [color=#ff0000]([/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]""[/color][color=#ff0000],[/color][color=#9999cc]"إضغط على موافق"[/color][color=#ff0000])[/color] [color=#aa0000]$time[/color] [color=#ff0000]=[/color] [color=#000090]timerdiff[/color] [color=#ff0000]([/color][color=#aa0000]$tm[/color][color=#ff0000])[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]"الوقت المستغرق بالثانية"[/color][color=#ff0000],[/color][color=#aa0000]$time[/color] [color=#ff0000]/[/color][color=#ac00a9]1[/color][color=#ac00a9]0[/color][color=#ac00a9]0[/color][color=#ac00a9]0[/color][color=#ff0000])[/color]
ولكن ما زلنا نفس المشكلة ,,
لازال يخرج كذا 5.41545554 << بس على الأقل بالثواني ,,
الآن يأتي دور round
أفضل شي في نظري ,,
نترك خانتين بعد الفاصلة ,, << وانت على كيفك
فيصبح كامل الأمر ,,
مثل المثال التالي ::
كود:[color=#aa0000]$tm[/color] [color=#ff0000]=[/color] [color=#000090]timerinit[/color] [color=#ff0000]([/color][color=#ff0000])[/color] [color=#009933];بدء المؤقت[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]""[/color][color=#ff0000],[/color][color=#9999cc]"إضغط على موافق"[/color][color=#ff0000])[/color] [color=#aa0000]$time[/color] [color=#ff0000]=[/color] [color=#000090]timerdiff[/color] [color=#ff0000]([/color][color=#aa0000]$tm[/color][color=#ff0000])[/color] [color=#009933];حساب الوقت[/color] [color=#aa0000]$timeinseconds[/color] [color=#ff0000]=[/color] [color=#aa0000]$time[/color] [color=#ff0000]/[/color] [color=#ac00a9]1[/color][color=#ac00a9]0[/color][color=#ac00a9]0[/color][color=#ac00a9]0[/color] [color=#009933];تحويله إلى الثواني[/color] [color=#aa0000]$done[/color] [color=#ff0000]=[/color] [color=#000090]round[/color][color=#ff0000]([/color][color=#aa0000]$timeinseconds[/color][color=#ff0000],[/color][color=#ac00a9]2[/color][color=#ff0000])[/color] [color=#009933];اختصار خانتين فقط[/color] [color=#000090]msgbox[/color] [color=#ff0000]([/color][color=#ac00a9]0[/color][color=#ff0000],[/color][color=#9999cc]"الوقت المستغرق بالثانية"[/color][color=#ff0000],[/color][color=#aa0000]$done[/color][color=#ff0000])[/color]
في ماذا ينفع الأمر ؟ !!!
ينفع في أشياء كثيرة جدا ,,
من بينها ,,
حساب الوقت لعمل معين ,,
مثلا تبدأ التايمر قبل عمليات حذف وإصلاح وتثبيت
وثم تنهيه بعدها وتخرج الوقت المستغرق ,,
أو عندما يكون في حلقة ,,
يكون لعمل شيء معين بعد وقت معينk:
على فكرة ,,
كثرت الأمثلة حتى يسهل الفهم
تم بحمد الله ,,
جاري عمل مثال لاستغلاله في الحلقات ,,
السلام علـــــــــــــــــــــــــــيكم ورحمت الله وبركاته
تمام اعتقد ان هذه بفضل الله فهمتها
يلا بقا نريد المزيد
