【发布时间】:2021-02-16 11:40:50
【问题描述】:
我想转换"2 hours 11 mins"(string)
以秒计的碳
有什么方法可以将该字符串格式转换为碳中的秒数吗?
我被这个卡住了,还没有找到解决方案
提前谢谢你...
【问题讨论】:
标签: laravel datetime php-carbon datetime-conversion
我想转换"2 hours 11 mins"(string)
以秒计的碳
有什么方法可以将该字符串格式转换为碳中的秒数吗?
我被这个卡住了,还没有找到解决方案
提前谢谢你...
【问题讨论】:
标签: laravel datetime php-carbon datetime-conversion
还有第三种方式:
use Carbon\CarbonInterval;
$intervalue=CarbonInterval::make("2 hours 11 mins");
$intervalueInSeconds= $intervalue->totalSeconds;
【讨论】:
Carbon 有一个有用的modify() 函数:
https://carbon.nesbot.com/docs/#api-addsub
此函数可以处理许多“神奇”持续时间来将日期更改为另一个日期。由于Carbon 与时间戳一起使用,您需要一个基础和一个修改过的,然后比较它们:
$base = Carbon\Carbon::now(); // 2020-11-03 19:04:49.140462 UTC (+00:00)
$modified = $base->copy()->modify('2 hours 11 mins'); // 2020-11-03 21:15:49.140462 UTC (+00:00),
$diff = $base->diffInSeconds($modified); // 7860
注意:传递给modify() 的字符串可能会失败,但如果失败,您会收到错误消息。
【讨论】:
你不需要碳来做到这一点。使用原生 php 函数。
$hours和$minutes。$seconds = $hours*3600 + $minutes*60;【讨论】:
PHP 中有一个strtotime() 函数:
$t = strtotime("2 hours 11 mins");
echo (time() - $t) . " seconds ago";
// -7860 seconds ago
【讨论】: