2011-08-05 19 views
13

मेरे पास एक चर में संग्रहीत दिनांक मान है। मुझे मूल्य के समय भाग को एक अलग चर में निकालने की आवश्यकता है और उसके बाद से समय घटाएं/घटाएं।दिनांक/समय स्ट्रिंग से समय प्राप्त करें

तारीख चर तिथि ('YmdHis') के साथ सेट कर दिया जाता,, (उदाहरण के लिए) अगस्त 2011 के लिए 5 वीं 20110805124000 दे रही है 12:40:00

मूल्य 20110805124000 (जो चर $ पूर्णकालिक में संग्रहीत किया जाता से), मुझे केवल $ 14:40 प्रारूप में समय संग्रहित करने की आवश्यकता है (इसलिए वर्ष, महीने, दिन और सेकंड को अनदेखा करना और घंटे और मिनट के बीच कोलन जोड़ना) $ shorttime नामक चर में। मुझे उस समय कई घंटों को जोड़ने की ज़रूरत है (इसलिए उदाहरण के लिए +3 घंटे $ शॉर्टटाइम वैरिएबल में 15:40 तक मान बदल देंगे)। मुझे जोड़ने के लिए आवश्यक घंटों की संख्या को $ addtime नामक चर में संग्रहीत किया जाता है, और यह मान ऋणात्मक संख्या हो सकता है।

क्या यह आसानी से करने योग्य है? क्या कोई मदद कर सकता है?

धन्यवाद :)

+1

दिनांक-समय के लिए एक अजीब प्रारूप है। आपको आईएसओ -8601 देखना चाहिए। – AyexeM

उत्तर

-7

पीएचपी < 5.0 समाधान के लिए:

<?php 
    $fulltime = '20110805124000'; 
    $addtime = -5; 
    $time = substr($fulltime,8,2).":".substr($fulltime,10,2); 
    $time = date("H:i",strtotime($time) + ($addtime*3600)); 
    echo $time; 
?> 
+0

धन्यवाद, पूरी तरह से काम किया। – Ross

3
<?PHP 

$addhours = 3; 

$date = DateTime::createFromFormat('YmdHis', '20110805124000'); 
$shorttime = $date->format("H:i"); 
$newdate = $date->add(DateInterval::createFromDateString($addhours . "hours")); 
$newtime = $newdate->format("H:i"); 


echo $shorttime . "<br />"; 
echo $newtime . "<br />"; 
?> 
आपके संदर्भ के लिए

:

http://www.php.net/manual/en/datetime.createfromformat.php

http://www.php.net/manual/en/dateinterval.createfromdatestring.php

45
$time = '2013-01-22 10:45:45'; 

echo $time = date("H:i:s",strtotime($time)); 

यह datetime से समय 10:45:45 दे देंगे।

+0

धन्यवाद, यह मेरे लिए काम करता है :) –

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