Vấn đề xử lý ngày tháng cực kỳ quan trọng khi bạn xử lý các bài viết và đăng tải lên website. Ví dụ bạn cần ra ngày tháng đăng bài viết hiển thị theo kiểu ngày / tháng / năm hoặc ngày - tháng - năm thì bắt buộc bạn phải biết cách sử dụng các hàm xử lý ngày trong PHP thì mới làm được. Đó là vấn đề cơ bản, vẫn còn nhiều vấn đề và tùy thuộc vào từng bài toán mà bạn sẽ có những hướng làm khác nhau
1. Time_zone setting at Vietnam
To setting time_zone ta doing theo cú pháp
date_default_timezone_set['Tên Time Zone'];
Lệnh này sẽ ảnh hưởng đến tất cả các lệnh xử lý ngày tháng phía bên dưới nó nên chắc chắn rằng bạn nên đặt lệnh này ở tệp đầu tiên của chương trình. To setting time_zone at Viet Nam, you use the following command
date_default_timezone_set['Asia/Ho_Chi_Minh'];
Để xem danh sách múi giờ, bạn sử dụng đoạn mã sau
$timezone = DateTimeZone::listIdentifiers[] ;
foreach [$timezone as $item]{
echo $item . '
';
}
2. Định dạng ngày tháng với hàm date[] trong PHP
Sử dụng hàm date để chuyển đổi thời gian theo định dạng mà lập trình viên mong muốn, cú pháp như sau
date [$format, $timestamp = 'time[]']
in which
4 là định dạng mà hàm này sẽ trả vềdate_default_timezone_set['Asia/Ho_Chi_Minh'];
5 là thời gian truyền vào [kiểu INT], mặc định nó sẽ lấy thời gian hiện tại [chính là thời gian hàm[]]date_default_timezone_set['Asia/Ho_Chi_Minh'];
Sau đây mình sẽ liệt kê một số định dạng hoặc bảng kê sử dụng tốt nhất
- d. return ngày tháng [số]
- D. return ngày của tháng [tiếng Anh]
- m. trả về tháng của năm [số]
- M. Trả về tháng năm [tiếng Anh]
- y. trả về năm [2 số cuối năm]
- Y. return full year 4 number
- H. return number of time [kiểu 24h]
- h. return number time [kiểu 6h]
- i. return number
- s. return number
- c. Return to the time type ISO 8601, normal used to make meta publish time in SEO
Ví dụ. Nhận thời gian hiện tại theo định dạng ngày/tháng/năm - giờ. phút. giây
echo date['d/m/Y - H:i:s'];
3. Xử lý ngày nâng cao trong PHP
- Chuyển đổi thời gian sang kiểu INT
Để chuyển thời gian sang kiểu INT, ta sử dụng hàm
date_default_timezone_set['Asia/Ho_Chi_Minh'];
6________số 8- Xử lý cộng trừ tháng với hàm
7date_default_timezone_set['Asia/Ho_Chi_Minh'];
Hàm
date_default_timezone_set['Asia/Ho_Chi_Minh'];
7 sẽ tính toán được đưa ra ngày chính xác bởi các tham số truyền vào, cú pháp như saudate_default_timezone_set['Asia/Ho_Chi_Minh'];
1Lưu ý. Hàm này sẽ trả về thời gian kiểu INT nên bạn phải sử dụng hàm date[] để chuyển đổi định dạng mong muốn
Hàm getdate[] tùy chọn nhận dấu thời gian và trả về một mảng liên kết chứa thông tin về ngày tháng. Nếu bạn bỏ qua Time Stamp, nó sẽ hoạt động với thời gian thực hiện được trả về theo hàm date[]
Sau đó bảng liệt kê các phần tử có trong mảng được trả về bởi getdate[]
STT
description
Ví dụ
1
giây
20
2
phút
29
3
giờ
22
4
mdays
11
5
ngày thứ hai
4
6
Thứ hai
7
7
năm
1997
8
ngày
19
9
ngày thường
thứ năm
10
tháng
tháng Giêng
11
0
948370048
Bây giờ bạn có toàn quyền kiểm soát ngày và giờ. Bạn có thể định dạng ngày và giờ này ở bất kỳ định dạng nào bạn muốn
Ví dụ
date_default_timezone_set['Asia/Ho_Chi_Minh'];
2đầu ra
date_default_timezone_set['Asia/Ho_Chi_Minh'];
3>>> Đọc thêm. Hằng số trong PHP - Tìm hiểu nhanh về hằng số trong PHP
Hàm date [] trả về một chuỗi định dạng biểu thị một ngày. Bạn có thể thực hiện một lượng lớn quyền kiểm tra đối với định dạng mà ngày [] trả về với một chuỗi đối số mà bạn phải chuyển cho nó
date_default_timezone_set['Asia/Ho_Chi_Minh'];
4Date[] tùy chọn chấp nhận một dấu thời gian nếu bị bỏ qua thì ngày và giờ hiện tại sẽ được sử dụng. Bất kỳ dữ liệu nào khác mà bạn đã nhập vào định dạng chuỗi được chuyển đến ngày [] sẽ được bao gồm trong giá trị trả về
Sau đó bảng liệt kê các mã mà một định dạng chuỗi có thể chứa
STT
description
Ví dụ
1
a
'am' or 'pm' viết thường
om
2
A
‘AM’ or ‘PM’ viết hoa
BUỔI CHIỀU
3
d
Ngày trong tháng
20
4
D
ngày trong tuần
thứ
5
F
Tên tháng
Tháng Giêng
6
h
Return time in the date type 12h
12
7
h
Return time in the date type 24h
22
8
g
22
9
G
12
10
i
22
11
j
Trả về ngày trong tháng, nhưng nếu ngày 365]
+5
Ví dụ
date_default_timezone_set['Asia/Ho_Chi_Minh'];
5Kết quả nhận được
date_default_timezone_set['Asia/Ho_Chi_Minh'];
6>>>Tham khảo. Key learning setting PHP
Kết luận. Bài viết trên đã chỉ đưa ra một số phương pháp để xử lý ngày tháng, ngày giờ trong PHP, tùy từng trường hợp mà bạn có thể áp dụng để xử lý ngày tháng cách nhau. Hy vọng bài viết hữu ích với bạn. Tìm hiểu thêm về PHP và các ngôn ngữ lập trình khác thông qua các khóa học lập trình tại Viện công nghệ thông tin T3H bạn nhé