【问题标题】:php - How To Convert 1 day To Secondsphp - 如何将 1 天转换为秒
【发布时间】:2014-01-03 00:23:48
【问题描述】:

我正在创建一个表单来设置发布间隔,并希望将所有提交的值合计为秒。该表单由用于确定秒、分钟、小时、天等的字段组成。

我通过提供日期属性(例如秒、分钟等)将提交的值收集到字符串中。

例如:

$秒秒

$分钟分钟

$小时小时

因此,如果用户在输入字段中输入 1 来确定 day 中的间隔和 minute 中的 30,那么我的代码会将其转换为字符串 1 day30 minute

我的问题:

1- 如何将 1 day30 minute 字符串转换为秒,以便将它们总结为正确的秒数。

我尝试使用strtotime(),但它返回的秒数非常大,date(),但它返回的数字太小。

2- 有没有像strtotime()date() 这样的简单函数可以正确地进行字符串到秒的转换?

【问题讨论】:

    标签: php string time intervals seconds


    【解决方案1】:

    您可以将strtotime() 与第二个参数一起使用,如下所示:

    strtotime('1 day 30 second', 0);
    

    这将为您提供86430,即 1 天 30 秒内的秒数。

    (如果省略第二个参数,则使用当前时间戳(即time())添加字符串中指定的内容,从而导致大数字。)

    【讨论】:

    • 太棒了..!这真是一个巧妙的解决方案!
    【解决方案2】:

    试试下面的代码:

    $day = 1;
    $hour = 1;
    $minute = 1;
    $second = 0;
    $second += (($day * 24 + $hour) * 60 + $minute) * 60;
    

    【讨论】:

    • 感谢您的回答。看来你数学不错。我以前找不到数学方法。
    猜你喜欢
    • 1970-01-01
    • 2011-01-26
    • 2015-02-03
    • 1970-01-01
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 2013-09-22
    • 2012-01-06
    相关资源
    最近更新 更多