Geçtikten günün yüzdesini hesaplarız

2 Cevap php

Biraz tuhaf bir soru, ama umarım birisi yardımcı olabilir.

Zaman 12:00 eğer özünde, geçen yüzdesi% 50 olacağını, 06:00% 25 olacak ve 16pm% 75 olacaktır.

Şimdiki zaman göz önüne alındığında, nasıl zaten geçti günün miktarını işe yarayabilir?

2 Cevap

Eğer günün şimdiki zaman alabilir varsayarsak, bu geçen gün yüzdesini hesaplamak oldukça kolay olurdu.

percentage = (hours / 24 + minutes / (60 * 24)) * 100

gettimeofday (true) Eğer istediğiniz kadar bir şamandıra (bence), gibi gece yarısından bu yana geçen saniye sayısını döndürür: gettimeofday(true)/(60*60*24). Bir yüzdesini almak için 100 ile çarpın.

EDIT: Aslında, gettimeofday çağın başlangıcından itibaren geçen saniye sayısını verir, bu yüzden gece yarısı çıkarmak gerekir:

$midnight = strtotime('00:00');
$epochseconds = gettimeofday(true);
$timeofdayseconds = $epochseconds - $midnight;
$timepercent = $timeofdayseconds/(60*60*24)*100;