Как я могу правильно получить остальную часть этого конкретного подразделения в PHP? - PullRequest
0 голосов
/ 09 ноября 2019

У меня есть эта функция.

public function handleaddMinutes(int $addedMinutes): void {
        $newMinutes = $this->getMinutes() + $addedMinutes;
        if($newMinutes > 60) {
            $hours = round($newMinutes / 60, 0, PHP_ROUND_HALF_DOWN);
            $this->addHour($hours);
            // TODO 
        }
        $this->addMinutes($newMinutes); //TODO
    }

Если минуты превышают 60, это должно добавить час, а остальное должно быть добавлено как минуты. Итак, допустим, я вызываю функцию с 125 минутами. Теперь функция должна использовать $this->addHour() для добавления 2 hours и $this->addMinutes() для добавления 25 minutes. Как мне этого добиться? Я попытался использовать приведенный ниже код, и это, вероятно, сработает, чтобы добавить часы, но как я могу добавить остаток как минуты?

1 Ответ

0 голосов
/ 09 ноября 2019

Оператор по модулю % даст вам минуты отдыха:

public function handleaddMinutes(int $addedMinutes): void {
    $newMinutes = $this->getMinutes() + $addedMinutes;
    if($newMinutes > 60) {
        $hours = round($newMinutes / 60, 0, PHP_ROUND_HALF_DOWN);
        $this->addHour($hours);
        // TODO 
    }
    $this->addMinutes($newMinutes % 60);
}
...