Giả sử bạn đang chạy một tiến trình chạy trong nền. Tốt hơn là đừng để người dùng mất kiên nhẫn và cho họ biết khi nào nó sẽ kết thúc. Tuy nhiên, bạn có thời gian còn lại tính bằng giây. Nếu chúng tôi hiển thị cho người dùng
567 seconds to complete
Anh ấy/cô ấy [người dùng] sẽ phải lấy một máy tính và chuyển đổi nó thành phút hoặc giờ. Hoặc nếu anh chàng/cô gái đó không phải là thiên tài toán học, anh ta sẽ đóng giao diện người dùng và nói "Cái quái gì vậy?"
Điểm chính trong giao diện người dùng là
Don't irritate the user
Đánh dấu lời nói của tôi. "Bạn không nên làm người dùng tức giận"
Thử nghiệm
Đây là một chức năng đơn giản để chuyển đổi giây thành giờ, phút và giây riêng biệt hoặc trộn lẫn với nhau
function secToHR[$seconds] {
$hours = floor[$seconds / 3600];
$minutes = floor[[$seconds / 60] % 60];
$seconds = $seconds % 60;
return "$hours:$minutes:$seconds";
}
Nếu bạn thắc mắc tại sao tôi lại chọn secToHR làm tên chức năng, thì đó là từ viết tắt của Seconds to Human Readable
Mã nguồn để chuyển đổi giây thành giờ, phút và giây được cung cấp bên dưới. Chương trình đã cho được biên dịch và thực thi thành công
" . [int]$hrs . ":" . [int]$mins . ":" . [int]$secs]; ?>
đầu ra
HH:MM:SS-> 1:48:50
Giải trình
Trong chương trình trên, chúng tôi đã tạo một biến $seconds, được khởi tạo với 6530 giây. Sau đó, chúng tôi chuyển đổi giây thành giờ, phút và giây tương ứng
Bài viết này trình bày cách chuyển đổi giây thành giờ-phút-giây trong PHP
1. Sử dụng chức năng gmdate[]
Với chức năng gmdate[] , bạn có thể dễ dàng chia giây đã cho thành các khoảng thời gian giờ-phút-giây. Nó lấy định dạng của chuỗi ngày xuất ra và tham số dấu thời gian tùy chọn, theo thứ tự đó. Ý tưởng là chuyển định dạng H:i:s
trong tham số chuỗi ngày và số giây trong tham số dấu thời gian.
1
2
3
4
Tải xuống Chạy mã
Ở đây, H
đại diện cho giờ ở định dạng 24 giờ [00 đến 23], i
đại diện cho phút [00 đến 59] và s
đại diện cho giây [00 đến 59], tất cả đều có số 0 đứng đầu. Tuy nhiên, điều này chỉ hoạt động nếu số giây nhỏ hơn 86400, tôi. e. , 1 ngày [60 x 60 x 24]
2. Sử dụng chức năng DateTime::diff[]
Ý tưởng là xây dựng một đối tượng DateTime
bằng cách sử dụng các ký hiệu được bản địa hóa, với "@"
đại diện cho dấu thời gian Unix và nhận sự khác biệt của nó với thời gian Epoch bằng cách sử dụng DateTime. hàm diff[] . Sau đó, bạn có thể trích xuất thông tin số giờ, phút và giây từ đối tượng kết quả là DateInterval
bằng cách sử dụng các thuộc tính h
, i
và s
tương ứng.
1
2
3
4
5
6
7
8
9
10
11
12
13
Tải xuống Chạy mã
Một phép tính toán học đơn giản cũng có thể được sử dụng để chia số giây đã cho thành các khoảng thời gian giờ-phút-giây, như minh họa bên dưới
1
2
3
4
5
6
7
8
9
Tải xuống Chạy mã
Đó là tất cả để chuyển đổi giây trong PHP thành giờ-phút-giây