दो तिथियों के बीच सेकंड की कुल संख्या की गणना करने का सबसे अच्छा तरीका क्या है? अब तक, मैंने कुछ लाइनों के साथ कोशिश की है:
$delta = $date->diff(new DateTime('now'));
$seconds = $delta->days * 60 * 60 * 24;
हालाँकि, days
DateInterval ऑब्जेक्ट की संपत्ति वर्तमान PHP5.3 बिल्ड (कम से कम विंडोज पर, यह हमेशा एक ही 6015
मूल्य लौटाती है ) में टूटी हुई लगती है । मैंने इसे एक तरह से करने का भी प्रयास किया, जो प्रत्येक माह (दिनों में 30), लीप वर्ष, आदि में दिनों की संख्या को संरक्षित करने में विफल होगा।
$seconds = ($delta->s)
+ ($delta->i * 60)
+ ($delta->h * 60 * 60)
+ ($delta->d * 60 * 60 * 24)
+ ($delta->m * 60 * 60 * 24 * 30)
+ ($delta->y * 60 * 60 * 24 * 365);
लेकिन मैं इस आधे-अधूरे समाधान का उपयोग करके वास्तव में खुश नहीं हूं।
format
है जब कहते हैं कि सेकंड की संख्या 0 है, जबकि मिनट की संख्या 1 है, $delta->format("%r%s")
पता चला है होना करने के लिए 0 :(
$delta->format("%r%s")
?