चूंकि आप भविष्य . के शेड्यूलिंग के बारे में बात कर रहे हैं समय, केवल को संग्रहित करना जरूरी नहीं कि यूटीसी सबसे अच्छा तरीका हो।
ध्यान रखें कि समय क्षेत्र के नियम बदल सकते हैं (और करते हैं)। अगर आप अपने समय क्षेत्र डेटा में अपडेट लागू करते हैं (PHP में, यह PECL के timezonedb के साथ किया जाता है पैकेज), तो आपके द्वारा पहले ही UTC में परिवर्तित किया गया कोई भी डेटा अमान्य हो सकता है।
एकाधिक मानों को संग्रहीत करना बेहतर समाधान है:
-
मूल स्थानीय तिथि और समय
-
मूल समय क्षेत्र (उदा.
"America/New_York"
) -
UTC दिनांक और समय, स्थानीय मानों से रूपांतरित किया गया
जब आप यह देखना चाहते हैं कि क्या यह कार्य चलाने का समय है, तो आप वर्तमान UTC दिनांक और समय की तुलना संग्रहीत UTC मान से करेंगे।
जब आप समय क्षेत्र अद्यतन लागू करते हैं, तो आप भविष्य की सभी प्रविष्टियों के लिए पिछले रूपांतरित UTC मानों को फेंक देते हैं, और अद्यतन किए गए डेटा के आधार पर नए मानों की पुनर्गणना करते हैं।
यदि आप ऐसा नहीं करते हैं, तो आप उस इरादे को खो रहे हैं जो उपयोगकर्ता ने मूल रूप से प्रदान किया था। और यदि आप अपना समय क्षेत्र डेटा अपडेट नहीं रखते हैं, तो आपका सिस्टम दुनिया भर में हो रहे विभिन्न परिवर्तनों से अवगत नहीं होगा, जैसे कि इस साल की शुरुआत में मिस्र में किए गए बदलाव, या रूस के लिए अक्टूबर में आने वाले बदलाव।पी>
अंतिम बिंदु - यदि ठीक से लागू किया गया है, तो आपके सर्वर का समय क्षेत्र मायने नहीं रखना चाहिए। UTC की तुलना UTC से करें।