나는 PHP 날짜 변환으로 붙어있다. 총 시간 (분)으로 'd 일 X 시간 Y 분'과 같은 동적 시간 문자열을 변환해야합니다. 이 시간 문자열은 동적이며 일부 타사 API에 의해 반환됩니다. 이것은 'X 시간 Y 분', 'Y 분'등과 같을 수 있습니다.PHP에서 'X 시간 Y 분'시간 문자열을 z 분으로 변환하는 방법
누군가이 문제에 대한 단서가 있다면 도와주십시오.
미리 감사드립니다.
나는 PHP 날짜 변환으로 붙어있다. 총 시간 (분)으로 'd 일 X 시간 Y 분'과 같은 동적 시간 문자열을 변환해야합니다. 이 시간 문자열은 동적이며 일부 타사 API에 의해 반환됩니다. 이것은 'X 시간 Y 분', 'Y 분'등과 같을 수 있습니다.PHP에서 'X 시간 Y 분'시간 문자열을 z 분으로 변환하는 방법
누군가이 문제에 대한 단서가 있다면 도와주십시오.
미리 감사드립니다.
조 대답으로, 여기 당신의 방법에 약간의 압력. 우리가 추가하고있는 + 앞에 주목하자. 우리는 이들을 날짜 객체로 바꾸고 diff()를 사용하여 언급 된 DateInterval을 물론 얻을 수 있습니다.
$apiTimeStamp = strtotime("+1 weeks 2 days 4 hours 2 seconds");
echo abs($apiTimeStamp - time())/60;
감사합니다. Ciccio,이 솔루션은 예상대로 작동합니다. –
이 시도 할 수 있습니다 :
<?php
$min=0;
$arr = '1 hours 20 minutes';
$a=explode(' ',$arr);
if($a[1] == 'hours')
{
$min = $min+ $a[0]*60;
}
if($a[3] == 'minutes')
{
$min =$min+ $a[2];
}
if($a[1] == 'minutes')
{
$min = $min+ $a[0];
}
echo "'".$min." minutes"."'";
?>
<?php
$apistring = "10 Hours 15 Minutes";
preg_match("#([\d]+)[/\s]+(?i)(?=hours)#", $apistring, $hours);
preg_match("#([\d]+)[/\s]+(?i)(?=minutes)#", $apistring, $minutes);
if (is_numeric($hours[1])==true) {
$intHourMinutes = $hours[1]*60;
}
else {
$intHourMinutes = 0;
}
if (is_numeric($minutes[1])==true) {
$intMinutes = $minutes[1];
}
else {
$intMinutes = 0;
}
$totalminutes=$intHourMinutes+$intMinutes;
print_r($totalminutes);
?>
들여다 ['DateInterval' (http://php.net/manual/en/dateinterval.format.php) 및 [strtotime으로 '()'(http://uk1.php.net /manual/en/function.strtotime.php) – Joe
이 API는 다른 형식을 제공하지 않습니까? – George
정규 표현식을 사용하여 시간과 분을 별도로 반환하는 방법은 어떻습니까? 예 : ([\ d] +) [\ s] + (? i) (? = 시간) ([\ d] +) [\ s] + (? i) (? = 분) – nire