Function checkTime()

Disebabkan ada yang bertanya pasal function checkTime() yang digunakan dalam #WaktuSolat, camni rupanya :-

[php]

function checkTime($currentTime, $startTime, $endTime){

// written 11/26/2006 by Patrick H. (patrickh@gmail.com)

//

// the time passed must meet all the below criteria to return 1 (true):

//

// – current hour needs to be equal or greater than start hour

// – current hour needs to be equal or less than end hour

// – current minute needs to be equal or greater than start minute (if current hour is ok)

// – current minute needs to be equal or less than end minute (if current hour is ok)

//

// if any of those checks does not pass, it will return 0 (false)

 

global $cHour;

global $cMin;

global $sHour;

global $sMin;

global $eHour;

global $eMin;

 

// break up current time

$now = explode(“:”,$currentTime);

$cHour = intval($now[0]); // current time – hour

$cMin = intval($now[1]); // current time – minute

 

// break up start time

$start = explode(“:”,$startTime);

$sHour = intval($start[0]); // start of range – hour

$sMin = intval($start[1]); // start of range – minute

 

// brek up end time

$end = explode(“:”,$endTime);

$eHour = intval($end[0]); // end of range – hour

$eMin = intval($end[1]); // end of range – minute

 

// this is the variable used to track the result of the checks

$pass = true;

 

if($sHour <= $eHour){

// the range is on the same day

 

// compare to the start hour

if($cHour < $sHour){

$pass = false;

}

 

// compare to the end hour

if($cHour > $eHour){

$pass = false;

}

 

// compare to the start min

if($cHour == $sHour){

if($cMin < $sMin){

$pass = false;

}

}

 

// compare to the end min

if($cHour == $eHour){

if($cMin > $eMin){

$pass = false;

}

}

 

} else {

// the range is overnight, so the logic is a little different

 

if( ($cHour < $sHour) && ($cHour > $eHour) ){

$pass = false;

}

 

// compare to the start min

if($cHour == $sHour){

if($cMin < $sMin){

$pass = false;

}

}

 

// compare to the end min

if($cHour == $eHour){

if($cMin > $eMin){

$pass = false;

}

}

 

}

 

// done with check, return the result

if($pass == false){

return 0; // failed

} else {

return 1; // passed

}

 

}

[/php]

Selamat mencuba!

One thought on “Function checkTime()

Add yours

Leave a Reply

Your email address will not be published. Required fields are marked *

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑