更新:这是维基百科文章所说的关于军事时间和风格的指南,内容涉及如何处理24:00和00:00的混乱:http://en.m.wikipedia.org/wiki/24-hour_clock#section_1。
#1 楼
在23:59到0:00,而不是24:00之后。在您放置“ php”标记时,请参见下面的php代码:
echo date('G:i:s', mktime(0,0,0)) . "\n" ;
echo date('G:i:s', mktime(0,0,0)-1) . "\n" ;
它将显示:
0:00:00
23:59:59
评论
我知道了,@ Chiyou。我自己对这24和12岁感到困惑,为了安全起见,我按照您的方式做事。无论如何,0:0是一天的开始。如果客户想要在每个星期六的午夜运行某项内容,则将其在每个星期日的0处放置。
–Grzegorz
2012年10月25日在2:07
这是一个小问题,但对我来说,在周六24:00运行它比在周日0:00运行更有意义。午夜更多的是一天的结束而不是下一天的开始。或者换种说法,它属于星期六晚上的时间要比属于星期天早上的时间多。值得注意的是,我们从夏令时更改为凌晨2点的标准时间,部分原因是由于这个原因。就我个人而言,我认为一天从日出或日落开始比较自然,但这就是我。
–最强
16年6月2日在17:54
#2 楼
没有24:00
。当您输入24:00
时,PHP可以理解,而不是抛出错误或返回false
(如5.3之前)。如果您告诉PHP 24:00 today
,它将理解00:00 tomorrow
。在PHP的时间表示中,它们都是同一时刻。您可以告诉PHP它是
24:00
,但是当您询问PHP时,它总是会说00:00
。 24:00
只是第二天的另一种说法。在00:00
和23:59
之间没有零长度的额外秒数(或其他内容)。所以,我不明白您何时说不能为每个星期六的午夜安排一些时间,而实际上有两种方式进行调度:
00:00
或Fri 24:00
。没有理由使用Sat 00:00
。评论
对我来说,这是正确的答案。 ..虽然在技术上是错误的-哈哈哈。就技术差异而言,这可以按要求进行解释,但是有一些错字:strtotime('今天24:00')是0:00,而strtotime('24:00')和strtotime('today 24' :00')是我希望的明天0:00。无论如何,PHP对待24:00的概念就像我希望它会对待37:00一样-通过包装到明天开始。 (但是,PHP的功能不会超过24:59:59.9 larger)。)
–乔尔·梅隆(Joel Mellon)
2014年1月29日在22:21
我并不是从字面上讲,只是将其作为strtotime的输入,而是感谢您指出如果这样使用它们会发生什么。
– bfavaretto
2014年1月30日,下午1:32
#3 楼
符号24:00主要用于表示时间间隔中一天的确切结束时间。一天的最后一刻在24小时内的23:59开始从Wikipedia
24:00 =午夜
(结束日期)
显示为第二天的开始
00:00 =午夜
(一天的开始)
但是真的
24:00 = 00:00
...没什么区别,但是由于兼容性问题,我建议您使用00:00
评论
@Chiyou:PHP 5.3是当前的旧稳定PHP版本,比该版本低的版本没有支持。并且请从您的问题中消除社会问题,因为这是编程问答,而更少的是询问如何与讨厌的客户打交道。
– hakre
2012-10-25 2:02
@Chiyou 24:00 = 00:00,但是当您使用24:00时,它假定您的计算从一天的开始开始,而00:00 =一天的开始,它并不能消除24:00显示为00:00或毒牙
–爸爸
2012年10月25日,2:15
@Chiyou:如果您遇到客户问题,一个普遍的规则是首先了解他们。如果您在遵循它们的含义时遇到问题,请灵活地处理它,了解它们的含义,以便您可以在代码中表达他们的要求。
– hakre
2012年10月25日,下午2:22
它说24:00是一天的结束时间,但显示的是00:00 ..没有计时器会在23:59到00:00或下一次的24.00同时显示24:00和00:00将是00:01
–爸爸
2012年10月25日上午11:23
@Chiyou ...我没有否决你..我喜欢你的问题只是给你了赞成票..它的重要性不再..你已经接受了答案..
–爸爸
2012年10月25日在11:44
#4 楼
只需自己尝试一下(您应该对问题进行处理,这样才能更加清楚地了解与PHP的关系):echo '00:00 - ', date('r', strtotime('00:00')),
"\n24:00 - ", date('r', strtotime('24:00'));
给出以下输出(演示):
00:00 - Thu, 25 Oct 2012 00:00:00 +0000
24:00 - Fri, 26 Oct 2012 00:00:00 +0000
您可能要做的下一件事(@Baba已经指出)是首先检查一些资源,例如(作为第一步)Wikipedia。
评论
@Chiyou:更多聪明的问题通常会得到更多聪明的答案。另外,这是我仅想指出的现有答案的补充,您可以用一些小的代码来澄清您的问题。因此,就像以某种方式给自己-1一样。
– hakre
2012年10月25日,2:20
@Chiyou:对吗?不正确吗我不知道您在这里要如何判断,但是我有一种感觉,即不仅在客户方面而且在您方面都感到困惑。您的工作是了解日期函数的工作原理,以便您可以使用它们来使应用程序正常工作。与您的客户澄清“今天24:00”或“星期一24:00”的含义。这必须与strtotime的时间不匹配。在澄清这些要点的同时,请注意午夜是一天的开始,而不是结束(通常)。因此,周六午夜不是周日00:00,而是周六00:00(如果使用24小时制)。
– hakre
2012-10-25 2:39
@Chiyou:我能理解您的客户让您处于压力之下。但是,只要您的客户不是军人,我就会处理更多的民事事务。甚至更大的军方对此也有不同的处理方式,例如完全阻止24:00和00:00。那么这两个都是不允许的,因此您需要选择23:59或00:01。我只说过您需要了解客户的需求,但是您正在寻找支持近视的立场的论据。成为解决方案的一部分,而不是问题的一部分。
– hakre
2012年10月25日,下午3:01
第二天的午夜24:00。 00:00是当天的午夜。就是这样。 PHP 5.3的strtotime支持24:00输入符号。在日期输出中,不存在24:00之类的东西。听起来不错?
– hakre
2012年10月25日在9:29
#5 楼
00:00 / 24:00的概念是我在中国工作的一个熟悉的概念-在我的情况下,我已经从保险政策的承保期限方面进行了处理:生效日期为01 / OCT / 2013 24:00的有效期为2013年10月1日至2014年9月30日。
年度政策的生效日期为01 / OCT / 2013 00:00的有效期为从2013年10月2日到2014年10月1日。
#6 楼
24:00是有效时间,与00:00不太一样-12月25日00:00之前整整24小时00:00是圣诞节的开始。
12月25日24:00是圣诞节的结束。您可以说这是节礼日00:00。
节礼日销售可能在节礼日00:00开始-可能在节礼日24:00结束。比说23:59:59更方便。
#7 楼
让我们将24小时制转换为12小时制。如果是晚上11:59,则1分钟后将是12:00 AM。 AM表示一天的开始,而PM表示一天的结束。如果您使用24:00,则表示一天结束(PM),而12:00 PM不在晚上。因此请使用00:00。评论
很好的解释,但您应该补充一点,没有24:00。 23:59之后是00:00就是这样。
–奥斯卡
2015年8月3日在16:44
AM / PM的问题在于它不是100%清晰的。是中午12点或下午12点?问100个人,我敢打赌,您会一半说一个,另一个说另一个。
–最强
16年2月2日在18:03
评论
您是从哪里获得24:00的? 23:59之后,应该是24小时制的00:00。您能显示一个生成24:00的函数或与任何语言都不相关的函数吗?不过,能够在日历上将深夜约会显示为25:00〜25:30是很有用的(但不要让它们在第二天折叠到页面中):-)
@Thilo:多日约会还有23:00-56:30还是什么?在我看来,这听起来像是一个愚蠢的主意;)
@hakre:我从未见过这种用法,我想那不是因为多日约会无论如何都要跨越多天,而可以说23:30〜26:00事件却没有。如果您想知道的话,此符号是实际使用的。
至少在日本,该符号通常用于深夜电影时间表:answers.yahoo.com/question/index?qid = 20090207184509AA5Ci56