我有一个表单输入,它接受时间间隔字符串,例如“1 天”、“3 周”、“2 个月、10 天”等,并将它们转换为总秒数的整数表示,因此“1 天”变为 86400。
现在我需要能够检索整数并将其转换回可编辑的格式化字符串。
我尝试过使用 DateInterval,但运气不佳。此外,据我收集的信息,这将限制我仅以一种格式显示它,因此它可以显示“3 天”或“58 天”。
任何人都知道可以将持续时间时间戳转换为最合适的间隔格式字符串的脚本吗?
我有一个表单输入,它接受时间间隔字符串,例如“1 天”、“3 周”、“2 个月、10 天”等,并将它们转换为总秒数的整数表示,因此“1 天”变为 86400。
现在我需要能够检索整数并将其转换回可编辑的格式化字符串。
我尝试过使用 DateInterval,但运气不佳。此外,据我收集的信息,这将限制我仅以一种格式显示它,因此它可以显示“3 天”或“58 天”。
任何人都知道可以将持续时间时间戳转换为最合适的间隔格式字符串的脚本吗?
像这样的东西:
<?php
$secs=7*106400;
$days=(int)($secs/(60*60*24));
$weeks=(int)($days/7);
$days=$days%7;
$remaining=$secs%(60*60*24);
$hours=(int)($remaining/(60*60));
$remaining=$remaining%(60*60);
$minutes=(int)($remaining/(60));
$remaining=$remaining%(60);
echo $weeks.' weeks '.$days.' days '.$hours.' hours '.$minutes.' minutes '.$remaining.' seconds';
输出:
1 weeks 1 days 14 hours 53 minutes 20 seconds