Heim >Backend-Entwicklung >PHP-Tutorial >时间的判断有关问题

时间的判断有关问题

WBOY
WBOYOriginal
2016-06-13 12:09:34890Durchsuche

时间的判断问题
A1  2014-10-1   10:00:00
A2  2014-10-2   14:00:00
B1  2014-10-4   13:00:00
B2  2014-10-5   15:00:00

A1为开始时间,A2为结束时间,B1为开始时间,B2为结束时间
现在有时间 C1-C2

如何判断C1-C2,如果在A1-A2或者B1-B2里面或者有交叉,出现弹框提示。

------解决思路----------------------
转换成时间戳 然后比较大小
------解决思路----------------------
观察一个事实

$ar = array(<br />  'A1' => '2014-10-1 10:00:00',<br />  'A2' => '2014-10-2 14:00:00',<br />  'B1' => '2014-10-4 13:00:00',<br />  'B2' => '2014-10-5 15:00:00',<br />);<br /><br />$ar['C1'] = '2014-10-3 13:00:00';<br />$ar['C2'] = '2014-10-5 13:00:00';<br /><br />asort($ar);<br />print_r($ar);
Array<br />(<br />    [A1] => 2014-10-1 10:00:00<br />    [A2] => 2014-10-2 14:00:00<br />    [C1] => 2014-10-3 13:00:00<br />    [B1] => 2014-10-4 13:00:00<br />    [C2] => 2014-10-5 13:00:00<br />    [B2] => 2014-10-5 15:00:00<br />)<br /><br />
根据键名就可准确的判断出来了吧?
------解决思路----------------------
无论有多少数据,算法都是不变的
只要依次检查键名,同组的“开始”和“结束”不相邻就是有交叉或嵌套

不写具体代码的原因是:你的情况远比示例复杂,写了你也套不上去。关键在于理解

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn