《PHP應(yīng)用:PHP編程計(jì)算兩個(gè)時(shí)間段是否有交集的實(shí)現(xiàn)方法(不算邊界重疊)》要點(diǎn):
本文介紹了PHP應(yīng)用:PHP編程計(jì)算兩個(gè)時(shí)間段是否有交集的實(shí)現(xiàn)方法(不算邊界重疊),希望對您有用。如果有疑問,可以聯(lián)系我們。
PHP實(shí)例本文實(shí)例講述了PHP編程計(jì)算兩個(gè)時(shí)間段是否有交集的實(shí)現(xiàn)方法.分享給大家供大家參考,具體如下:
PHP實(shí)例優(yōu)化前的版本:
PHP實(shí)例
/**
* PHP計(jì)算兩個(gè)時(shí)間段是否有交集(邊界重疊不算)
*
* @param string $beginTime1 開始時(shí)間1
* @param string $endTime1 結(jié)束時(shí)間1
* @param string $beginTime2 開始時(shí)間2
* @param string $endTime2 結(jié)束時(shí)間2
* @return bool
*/
function is_time_cross($beginTime1 = '', $endTime1 = '', $beginTime2 = '', $endTime2 = '') {
$status = $beginTime2 - $beginTime1;
if ($status > 0) {
$status2 = $beginTime2 - $endTime1;
if ($status2 > 0) {
return false;
} elseif ($status2 < 0) {
return true;
} else {
return false;
}
} elseif($status < 0) {
$status2 = $endTime2 - $beginTime1;
if ($status2 > 0) {
return true;
} else if ($status2 < 0) {
return false;
} else {
return false;
}
} else {
$status2 = $endTime2 - $beginTime1;
if ($status2 == 0) {
return false;
} else {
return true;
}
}
}
PHP實(shí)例優(yōu)化后的版本(條件合并):
PHP實(shí)例
/**
* PHP計(jì)算兩個(gè)時(shí)間段是否有交集(邊界重疊不算)
*
* @param string $beginTime1 開始時(shí)間1
* @param string $endTime1 結(jié)束時(shí)間1
* @param string $beginTime2 開始時(shí)間2
* @param string $endTime2 結(jié)束時(shí)間2
* @return bool
*/
function is_time_cross($beginTime1 = '', $endTime1 = '', $beginTime2 = '', $endTime2 = '') {
$status = $beginTime2 - $beginTime1;
if ($status > 0) {
$status2 = $beginTime2 - $endTime1;
if ($status2 >= 0) {
return false;
} else {
return true;
}
} else {
$status2 = $endTime2 - $beginTime1;
if ($status2 > 0) {
return true;
} else {
return false;
}
}
}
PHP實(shí)例測試:
PHP實(shí)例
$beginTime1 = strtotime('2015-08-07 06:30');
$endTime1 = strtotime('2015-08-07 08:30');
$beginTime2 = strtotime('2015-08-07 05:30');
$endTime2 = strtotime('2015-08-07 06:31');
echo is_time_cross($beginTime1, $endTime1, $beginTime2, $endTime2);//輸出1
PHP實(shí)例PS:這里再為大家推薦幾款時(shí)間及日期相關(guān)工具供大家參考使用:
PHP實(shí)例在線日期/天數(shù)計(jì)算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi
PHP實(shí)例在線日期計(jì)算器/相差天數(shù)計(jì)算器:
http://tools.jb51.net/jisuanqi/datecalc
PHP實(shí)例在線日期天數(shù)差計(jì)算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq
PHP實(shí)例Unix時(shí)間戳(timestamp)轉(zhuǎn)換工具:
http://tools.jb51.net/code/unixtime
PHP實(shí)例更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php日期與時(shí)間用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
PHP實(shí)例希望本文所述對大家PHP程序設(shè)計(jì)有所幫助.
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/713.html