有很多方法可以做到这一点,包括仅使用基于 stripos(x,y) 和 substr(x,y) 的函数,以及用于删除空格的修剪...
这是功能:
function extract_unit($string, $start, $end)
{
$pos = stripos($string, $start);
$str = substr($string, $pos);
$str_two = substr($str, strlen($start));
$second_pos = stripos($str_two, $end);
$str_three = substr($str_two, 0, $second_pos);
$unit = trim($str_three);
return $unit;
}
在这里阅读更多。
在您的情况下使用示例:
$text = '1 hour 9 mins';
$hours = (int)extract_unit($text, '', 'hour'); // Returns 1
$mins = (int)extract_unit($text, 'hour', 'mins'); // Returns 9
$secs = ($hours*3600) + ($mins*60); // Returns 4140