【问题标题】:Formatting Duration From String in PHP在 PHP 中格式化字符串的持续时间
【发布时间】:2016-01-25 16:27:13
【问题描述】:

我想从sting计算不同的日期,字符串格式是(01:50:30)

例如:
1: (01:35:00)
2: (04:45:50) )
3: (02:35:36)
4: (01:00:00)
5: (06:35:47)

如何用日期格式计算这些字符串?

【问题讨论】:

  • 你可以去掉 "(" 然后使用 strtotime 函数将 str 转换为 unix 时间
  • 我添加括号只是为了解释在我的代码中不使用:)
  • 这些是时间而不是日期,你想达到什么目的?到目前为止你尝试了什么??
  • 这次我要加分
  • @HalayemAnis 感谢您的更正:)

标签: php wordpress datetime


【解决方案1】:

您可以使用日期时间

<?php

    date_default_timezone_set('America/Los_Angeles');
    $time = DateTime::createFromFormat('H:i:s', '12:05:59');
    var_dump($time);
    $time->modify('5 minutes');
    $time->modify('1 hour');
    $time->modify('-30 seconds');
    var_dump($time);

【讨论】:

    【解决方案2】:

    您将无法仅根据您提供的时间计算日期,您可以将其转换为 DateTime 对象,它将当前日期设置为今天并使用您提供的时间作为时间。

    例如:

    $time = '(01:35:00)';
    $date = DateTime::createFromFormat('(' . 'H:i:s' .  ')', $time);
    echo $date->format('Y-m-d H:i:s');
    

    将输出:

    2016-01-25 01:35:00

    然后您可以根据需要轻松操作DateTime 对象。完整的文档可以在 PHP 手册中找到: http://php.net/manual/en/class.datetime.php

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-23
      • 1970-01-01
      • 2018-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多