कुछ पृष्ठभूमि यूनिक्स टाइमस्टैम्प स्टोर करने के लिए:कैसे MySQL के साथ
मेरी वेबसाइट अलग समय क्षेत्रों के सभी प्रकार भर में उन समन्वय पर निर्भर है।
मैं क्लाइंट पर सर्वर पक्ष और moment.js पर अपने समय क्षेत्र रूपांतरण और गणना को संभालने के लिए कार्बन का उपयोग कर रहा हूं।
परिणामस्वरूप डिजाइन पसंद किया गया था कि सभी दिनांक समय (जैसे किसी ईवेंट का प्रारंभ समय) यूनिक्स टाइमस्टैम्प के रूप में संग्रहीत किया जाएगा।
समस्या
मैं थोड़ा एक "टाइमस्टैम्प 'की परिभाषा से उलझन में हूँ।
2016-10-06 20:50:46
तो अगर आप वर्तमान टाइमस्टैम्प का एक डिफ़ॉल्ट क्षेत्र करना चाहते हैं तो आप जीएमटी में वर्तमान दिनांक मिलती है: PHPMyAdmin में टाइमस्टैम्प एक यूनिक्स टाइमस्टैम्प बल्कि एक दिनांक स्वरूप नहीं है।
यह चीजें अधिक एक यूनिक्स टाइमस्टैम्प पूर्णांक की तुलना में एक उपयोगकर्ता समयक्षेत्र में वापस कन्वर्ट करने के लिए जटिल बना देता है ...
प्रश्न:
क्या फ़ील्ड प्रकार मैं के रूप में मेरे यूनिक्स टाइमस्टैम्प संग्रहीत करना चाहिए, वर्तमान में मैं none
के डिफ़ॉल्ट के साथ int(11)
का उपयोग कर रहा हूँ। विस्तार से ... क्या MySQL में डिफ़ॉल्ट रूप से वर्तमान यूनिक्स टाइमस्टैम्प (उदा। 1475971200) को स्टोर करने का कोई तरीका है?
आप से और यूनिक्स टाइमस्टैम्प के दिनांक परिवर्तित करके समस्या को नाकाम कर सकते हैं। तो एक यूनिक्स टाइमस्टैंप डालने के लिए, आप अपनी तालिका में एक DATETIME फ़ील्ड बनाएंगे, और यूनिक्स टाइमस्टैम्प को 'FROM_UNIXTIME (1514789942)' के साथ कनवर्ट करेंगे। फिर जब आप यूनिक्स टाइमस्टैम्प में मान वापस प्राप्त करना चाहते हैं तो आप 'UNIX_TIMESTAMP (my_datetime_field) चुनें' – Jacques