मुझे यह जांचने की ज़रूरत है कि वर्तमान समय टाइमरेंज में है या नहीं। सबसे सरल मामले time_end> TIME_START:कैसे जांचें कि वर्तमान समय पायथन में है या नहीं?
if time(6,0) <= now.time() <= time(12,00): print '1'
लेकिन मुसीबतों जब समाप्ति समय प्रारंभ समय से छोटा होता है जब उपयोगकर्ता एक समय सीमा में प्रवेश करती है, उदाहरण के लिए शुरू "23:00 - 06:00"। '00: 00 'जैसे समय इस सीमा में होंगे।
function checkInterval($start, $end)
{
$dt = date("H:i:s");
$tstart = explode(":", $start);
$tend = explode(":", $end);
$tnow = explode(":", $dt);
if (!$tstart[2])
$tstart[2] = 0;
if (!$tend[2])
$tend[2] = 0;
$tstart = $tstart[0]*60*60 + $tstart[1]*60 + $tstart[2];
$tend = $tend[0]*60*60 + $tend[1]*60 + $tend[2];
$tnow = $tnow[0]*60*60 + $tnow[1]*60 + $tnow[2];
if ($tend < $tstart)
{
if ($tend - $tnow > 0 && $tnow > $tstart)
return true;
else if ($tnow - $tstart > 0 && $tnow > $tend)
return true;
else if ($tend > $tnow && $tend < $tstart && $tstart > $tnow)
return true;
else return false;
} else
{
if ($tstart < $tnow && $tend > $tnow)
return true;
else
return false;
}
अब मैं एक ही बात करने की जरूरत है, लेकिन मैं इसे अच्छी लग रही बनाना चाहते: के बारे में 5 साल पहले मैं इस PHP समारोह लिखा था। तो, मुझे यह निर्धारित करने के लिए क्या एल्गोरिदम का उपयोग करना चाहिए कि वर्तमान समय '00: 00 ' रेंज को उलट देता है या नहीं। ['23:00', '01:00']
?
को कुछ ढीला ओपी कट, वह केवल 27 प्रतिनिधि है। बिना बताए अपने सवाल को कम करना क्यों उसे शिक्षित नहीं करेगा। –