从双数据类型转换为秒

I would like to ask of this kind of double data type can be converted into seconds?

In my database, the record is 6.80 means that 6 is hours and 80 is minutes. I want the output be 7 hours and 20 minutes. Is this possible?

Example:

$t=6.80;    
$s = $t - floor($t);
if($s>.60)
{
    $t = $t -$s;
    $t++;
    $s=$s-.60;
    $t=$t+$s;
}

floor() function is used to get the fractional part of a floating point number.

Do the OOP way..!

For a 12-Hr Format.

<?php
$dt='6.80';
$date = DateTime::createFromFormat('H.i', $dt);
echo $date->format('g')." hours and ".$date->format('i')." minutes";

OUTPUT:

7 hours and 20 minutes

For a 24-Hr Format.

<?php
$dt='23.75';
$date = DateTime::createFromFormat('H.i', $dt);
$var= ($date->format('G')==0)?'00':$date->format('G');
echo $var." hours and ".$date->format('i')." minutes";

OUTPUT:

00 hours and 15 minutes

Try this

    $str = "6.80";
    $str = explode(".",$str);
    $min = $str[0]*60 + $str[1];
    $sec = $min*60;
    echo date("H:i",$sec);
    (Or)
    $hour = intval($min/60);
    $mins = $min%60;

    echo  "$hour:$mins";

this is another way:

<?php
    $time = '9.102';
    $tmp_min = strstr($time, '.');
    $tmp_hour = strstr($time, '.', true);
    $pos = strpos($time, '.');
    $str_mins = substr($time, $pos+1);
    $min = (int) ($str_mins);
    if ( $min > 60 ) {
        $ext_hour = floor($min/60);
        $final_min = $min%60;
        $final_hour = (int) ($tmp_hour + $ext_hour);
        echo $final_hour . ' Hours and ' . $final_min . ' Minuts..';
        }
    else {
        $final_hour = (int) ($tmp_hour);
        $final_min = $min;  
        echo $final_hour . ' Hours and ' . $final_min . ' Minuts..';
    }
?>