Hôm nay động đến một task có liên quan đến một yêu cầu như thế này: Sẽ có số tổng thời gian tính bằng giây và cần đổi về chuẩn định dạng đầy đủ hh:mm:ss. Ví dụ: 685 sẽ thành 00:11:25
Công thức được tính thì đây:
685 / 3600 = 0.19027 => h = 0
(685 – 3600 * h) / 60 = 11.416 => m = 11
685 – 3600 * h – 60 * m = 25 => s = 25
Đó là công thức tính và đây là code:
1 2 3 4 5 6 7 | <?php $init = 685; $hours = floor($init / 3600); $minutes = floor(($init / 60) % 60); $seconds = $init % 60; echo "$hours:$minutes:$seconds"; ?> |
Công thức này luôn đúng. Tuy nhiên nếu bạn biết chắc chắn số giờ luôn nhỏ hơn hoặc bằng 24 (tức là 1 ngày – 86400s) thì có một đoạn mã dễ hơn cũng xuất ra tương tự.
1 2 3 | <?php echo gmdate("H:i:s", 685); ?> |
Chúc các bạn thành công.
Huỳnh Mai Anh Kiệt
- Advertisement -