Время синтаксического анализа из строки HTML

#php #regex

#php #регулярное выражение

Вопрос:

Кто-нибудь может помочь мне получить час, минуты, секунды из этого кода:

 <strong class="countdown">                 23:16:27</strong>
  

Я пытался с помощью этого кода получить данные:

 $r = sscanf($str, "%f,%f,%f", $hour, $minutes, $secundes);
  

Как разобрать этот таймер обратного отсчета с помощью регулярного выражения или чего-то еще и поместить в $ hour, $ minutes, $ seconds? (извините за мой английский)

Комментарии:

1. $ r = sscanf($ str, «% f,% f,% f», $ час, $ минуты, $ секунды);

2. strtotime() не работает над этим?

3. $str = $xpath2->query(«//strong[@class=’countdown’]» ->item(0)->textContent);

Ответ №1:

Используйте strtotime(); смотрите здесь:

 <?php
$time = '23:16:27';
$time = strtotime($time);
$hour = date('g',$time);
$minute = date('i',$time);
$second = date('s',$time);
echo "hour: " . $hour . "<br>";
echo "minute: " . $minute . "<br>";
echo "second: " . $second . "<br>";
?>
  

Ответ №2:

 if (preg_match('/[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}/i', $str, $m)) {
    $hours = $m[1];
    $minutes = $m[2];
    $seconds = $m[3];
}