PHP 时间段“7 天,18:50:19”

PHP time period "7 days, 18:50:19"

在 php 中将此时间段转换为秒的最佳方法是什么? “7 天,18:50:19”~>“67000”

strtotime 可以原生解析成这样的 "period" 格式,唯一的关键是还要传入 0 作为第二个参数,这样结果是相对于 unix 的纪元而不是当前时间:

$seconds = strtotime('7 days 18:50:19', 0);
echo $seconds;

672619

我们可以做得更好吗?

$interval = "7 days, 18:50:19";
$interval = preg_replace("/[a-z A-Z]/", "", $interval);
$int = preg_split( "/(,|:)/", $interval);
$inter = ($int[0]*86400) + ($int[1]*3600) + ($int[2]*60) + ($int[3]);
var_dump($inter);