【问题标题】:Laravel Carbon cast datetime to set seconds to 00Laravel Carbon 投射日期时间以将秒数设置为 00
【发布时间】:2020-06-05 22:46:30
【问题描述】:

如果我有这样的变量:

$arivalTime1 = '2020-06-05 15:52:27'
$arivalTime2 = '2020-06-05 15:52:55'

如何使用 Carbon 转换这些变量以使秒数显示为 00:

$converted1 = 2020-06-05 15:52:00
$converted2 = 2020-06-05 15:52:00

【问题讨论】:

  • $arivalTime1 = '2020-06-05 15:52:27', $value=Carbon::parse($arivalTime1), dd($value), value 保留第二部分.. .
  • "删除秒数" 还是将它们设为零?
  • @kerbh0lz 将它们设为零 :-)
  • @OMR 谢谢,我已将其添加为 anwser,如果您也是 awnser,我将删除我的。

标签: php laravel php-carbon


【解决方案1】:

有很多方法可以做到:

1- 就像 Vladimir verleg 的回答:

$arivalTime1 = '2020-06-05 15:52:27'
Carbon::parse($arivalTime1)->format('Y-m-d H:i:00');

2- 使用 startOfMinute() 方法:

Carbon::parse($time)->startOfMinute()->toDateTimeString();

3- 使用 create 方法让你有更多的控制权:

$value=Carbon::parse($time);
$wantedValue=Carbon::create($value->year,$value->month,$value->day,$value->hour,$value->minute,0);

【讨论】:

    【解决方案2】:

    感谢@OMR 在 cmets 中提供的解决方案:

    Carbon::parse($time)->startOfMinute()->toDateTimeString()
    

    【讨论】:

      【解决方案3】:

      使用 Carbon 解析您的日期字符串并对其进行格式化,将秒部分设置为 00:

      $arivalTime1 = '2020-06-05 15:52:27';
      echo Carbon::parse($arivalTime1)->format('Y-m-d H:i:00');
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-08
        • 2013-07-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多