Как я могу преобразовать двойное значение во время? - PullRequest
2 голосов
/ 30 июля 2010

Как я могу преобразовать двойное значение во время?Например, если входное значение равно 7.50, то выходное значение будет равно 7.30.

Ответы [ 4 ]

4 голосов
/ 30 июля 2010
$input = "7.5";
list($hours, $wrongMinutes) = explode('.', $input);
$minutes = ($wrongMinutes < 10 ? $wrongMinutes * 10 : $wrongMinutes) * 0.6;
echo $hours . ':' . $minutes;
4 голосов
/ 30 июля 2010

Получите только недесятичный остаток по

$val = $input - floor( $input );

Затем преобразуйте значения от 0-99 до 0-60 по (в точности это 0,99 ... до 0,60):

$val = $val*0.6;

В конце добавить вычисленное значение точности к десятичной части ввода:

$output = floor( $input ) + $val
2 голосов
/ 30 июля 2010

Используйте этот код:

<?php
$input = 7.50;
$hours = intval($input);
$realPart = $input - $hours;
$minutes = intval( $realPart * 60);
echo $hours.":".$minutes;
?>
0 голосов
/ 30 июля 2010
  1. Найдите неотъемлемую часть числа: это ваши часы
  2. Найдите дробную часть числа; умножьте это на 60 и округлите (этаж ()). Это твои секунды. Вот и все.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...