Как узнать процент прошедшего времени? Отображаю посетителю количество % прошедшего времени в виде полосы загрузки.
Есть:$NOW = unixtime, текущее время$START = unixtime, момент, когда началось действие$INTERVAL = интервал, 600 (10 мин.)$TOTAL = всего процентов должно быть на шкалеДля вычисления прогресса пишу:$progress = $TOTAL - ($TOTAL- ($NOW - $START) / $INTERVAL * $TOTAL);
/*echo 'Осталось: ' . date('i мин. s сек.', $START + $INTERVAL - $NOW);*/
Не допустил ли я ошибку при вычислении % прогресса?

21 Авг 2019 в 06:13
117 +1
0
Ответы
1

Да, у вас ошибка в формуле вычисления прогресса. Правильная формула будет выглядеть следующим образом:

$progress = (($NOW - $START) / $INTERVAL) * $TOTAL;

Эта формула вычисляет процент прогресса на основе временного интервала, прошедшего с момента начала действия.

Также вы можете добавить проверку на максимальное значение 100% для случая, если время превысит заданный интервал:

if ($progress > $TOTAL) {
$progress = $TOTAL;
}

Теперь вы сможете корректно отображать процент прогресса на вашей полосе загрузки.

20 Апр в 13:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 90 246 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир