【发布时间】:2020-03-27 19:42:50
【问题描述】:
我需要在php中转换下面的文本
11557
00337
00619
...
到
1hour 15min 57seconds
3min 37seconds
6min 19seconds
...
有可能吗?
问候。
【问题讨论】:
-
分享您的代码并从人们那里获得反馈通常是个好主意。
标签: php replace preg-replace
我需要在php中转换下面的文本
11557
00337
00619
...
到
1hour 15min 57seconds
3min 37seconds
6min 19seconds
...
有可能吗?
问候。
【问题讨论】:
标签: php replace preg-replace
我得到了它:
<?php
$string = '00213';
$dto = DateTime::createFromFormat('his', sprintf('%06s', $string));
echo $dto->format('H:i:s');
谢谢。
【讨论】:
这是满足您要求的解决方案,非常简单
$arr_time = array('11557', '00337', '00619');
$arr_str = array();
foreach ($arr_time as $time) {
$str_time = '';
$hr = substr($time, 1, 1);//Extract hour
$min = substr($time, -4, 2);//Extract min
$sec = substr($time, -2, 2);//Extract sec
if(!empty($hr)){
$str_time .= (int)$hr . 'hour ';
}
if(!empty($min)){
$str_time .= (int)$min . 'min ';
}
if(!empty($sec)){
$str_time .= (int)$sec . 'seconds ';
}
echo $str_time . '<br/>';
}
输出:
1hour 15min 57seconds
3min 37seconds
6min 19seconds
【讨论】: