यह कम अंक प्रिंट कर सकता है, क्योंकि यह एक फ्लोट वैल्यू है। तो यदि आपको 1234.0005
मिलता है, तो `0005 वास्तव में 500 माइक्रोसॉंड का मतलब है। 5 के बाद शून्य खो गए हैं क्योंकि यह अभी भी एक अपरिवर्तित फ्लोट वैल्यू है।
फ़ंक्शन microtime
सिस्टम कॉल gettimeofday()
पर आधारित है, जो माइक्रोसॉन्ड के लिए भी सटीक नहीं है। आम तौर पर यह 10 माइक्रोसॉन्ड के लिए सटीक है। Linux - Is gettimeofday() guaranteed to be of microsecond resolution भी देखें।
-edit- मुझे लगता है कि चश्मे microseconds से मिलीसेकंड में बदल गए हैं।
फ्लोट वैल्यू प्राप्त करने के लिए आपके पास एक पूर्णांक है, तो आप एक मान से गुणा कर सकते हैं। फ्लोट वैल्यू सेकंड का प्रतिनिधित्व करता है। माइक्रोसॉन्ड प्राप्त करने के लिए मिलीसेकंड या 1,000,000 प्राप्त करने के लिए 1000 से गुणा करें। चूंकि चश्मे (अब) मिलीसेकंड कहते हैं, आपको 1000 से गुणा करना चाहिए। 10k आपको 1/10ms = 100μs की सटीकता देगा। एक मिलीसेकंड एक सेकंड का एक हजारवां है। एक माइक्रोसॉन्ड एक सेकंड का दस लाखवां हिस्सा है।
कम लंबी कहानी, पूर्णांक मिलीसेकेंड में समय प्राप्त करने के लिए, इस का उपयोग करें:
$milliseconds = round(microtime(true) * 1000);
नोट: वहाँ एक कारण है कि आप एक स्ट्रिंग या डिफ़ॉल्ट रूप से एक नाव के रूप में समय मिलता है। इसका कारण यह है कि 32 बिट सिस्टम पर, PHP का पूर्णांक भी 32 बिट्स है और यह मिलीसेकंड और माइक्रोसॉन्ड सहित टाइमस्टैम्प रखने के लिए पर्याप्त नहीं है। तो यह समाधान केवल 64 बिट सिस्टम पर अच्छा काम करेगा।
आप मिलीसेकेंड में या माइक्रोसेकंड में टाइमस्टैम्प की ज़रूरत है? शीर्षक कहता है कि एक चीज और वास्तविक प्रश्न एक और –
यह समस्या को हल कर रहा है। पीछे की ओर शून्य को प्रतिबिंबित नहीं किया जाता है, 'str_pad (str_replace ("।", "", Microtime (true)), 14, 0) ' – splash58
@AlexAndrei: क्षमा करें मुझे मिली सेकंड में – Vishnu