PHP

2011-06-18 6 views
5

का उपयोग कर टाइमस्टैम्प से 6 घंटे घटाएं मेरे पास यह कोड डेटाबेस से दिनांक और समय प्रदर्शित करने के लिए है। टाइमस्टैंप से 6 घंटे घटाने के लिए मैं इसे कैसे संशोधित करूं।PHP

date('m-d g:Ga', strtotime($row['time_stamp'])) 

उत्तर

14

यूनिक्स समय टिकटें युग के बाद से सेकंड हैं। सीधे शब्दों में छह घंटे में सेकंड की संख्या घटाना:

date('m-d g:Ga', strtotime($row['time_stamp'])-21600) 

आप वैकल्पिक रूप से strtotime फिर से इस्तेमाल कर सकते हैं:

date('m-d g:Ga', strtotime('-6 hours', strtotime($row['time_stamp']))) 
+0

यह समय घटाने के लिए काम किया। हालांकि, उस पर -21600 जोड़ने के बिना, यह 3:03 बजे के रूप में बाहर निकलता है। जब मैं उस पर -21600 जोड़ता हूं तो यह 9:21 बजे के रूप में बाहर निकलता है। मैं वहां समय कैसे खो रहा हूँ? –

+0

21600s = 6 घंटे इसलिए आपको एक ही टाइमस्टैम्प पर दोनों बार परिचालन नहीं करना चाहिए। – Robin

4

चूंकि यह MySQL में है, तो आप MySQL आप के लिए गणना करते हैं हो सकता है:

SELECT DATE_FORMAT('...', DATE_SUB(time_stamp, INTERVAL 6 HOUR)) ... 

यह आपको MySQL के ओवरहेड को एक पूर्ण स्ट्रिंग में अपने आंतरिक प्रतिनिधित्व को परिवर्तित करने के लिए सहेज लेगा, और PHP के स्ट्रेटोटाइम() के उपरिवर्तक को उस पर छेड़छाड़ करने के लिए स्ट्रिंग करेगा अभी तक एक और स्ट्रिंग में वापस। जबकि स्ट्रेटोटाइम कभी-कभी जादुई होता है, यह निश्चित रूप से कुशल नहीं है।

0

$ vindate = date ('एच: i: s', strtotime ($ row ['ms_attend_time']) + 19800); echo $ vindate;

संबंधित मुद्दे

 संबंधित मुद्दे