Search…

Xử Lý Thời Gian Trong PHP

08/09/20203 min read
Cách thức xử lý thời gian trong PHP.

Một website với lượng truy cập lớn thường xuyên phải cập nhật thông tin mới, username, password… một cách liên tục. Thường thấy trong các PHP framework, mỗi một database đều có những trường đánh dấu thời gian tạo hoặc thời gian cập nhật. Việc đó sẽ giúp quản lý tốt thông tin và website luôn thể hiện những thông tin mới nhất.

Các hàm thời gian

Timestamp thời điểm hiện tại của server

echo time(); //1411710106

Hàm này trả về một dãy số và ta có thể định đạng lại dãy số này thành chuỗi ngày tháng.

Kiểm tra chuỗi thời gian hợp lệ

checkdate($month, $day, $year)

if (checkdate(13,26,2014) == true)
{
    echo "Hợp lệ";
}
else
{
    echo "Không hợp lệ"; // Không hợp lệ
}

Thời gian trong trường hợp này không hợp lệ vì dữ liệu nhập vào tháng là số 13.

Thời gian hiện tại và định dạng

Thời gian hiện tại và thể hiện tuỳ vào định dạng ngày tháng nhập vào

date($string, $format)

echo date("d/m/Y H:i:s"); // 26/09/2014 08:17:43
echo date("w"); // 5  :  số thứ tự của ngày trong tuần
echo date("D"); // Fri : tên rút gọn của thứ trong tuần
echo date("l"); // Friday : tên đầy đủ của thứ trong tuần
echo date("M"); // Sep : Tên rút gọn của tháng
echo date("F"); // September : Tên đầy đủ của tháng
echo date("z"); // 268 : số thứ tự ngày trong năm

Thay đổi thời gian

Sử dụng cú pháp dạng chuỗi để thay đổi thời gian

strtotime()

// 26/09/2014 09:18:14 : thời gian hiện tại
echo date("d/m/Y H:i:s");
// 27/09/2014 09:18:54 : tăng 1 ngày
echo date("d/m/Y H:i:s", strtotime("+1 day"));
// 03/10/2014 09:19:19 : tăng 1 tuần
echo date("d/m/Y H:i:s", strtotime("+1 week"));
// 03/10/2014 00:00:00 : đến thứ 6 tuần sau
echo date("d/m/Y H:i:s", strtotime("next Friday"));
// 24/09/2014 00:00:00 : thứ 4 vừa qua
echo date("d/m/Y H:i:s", strtotime("last Wednesday"));

Múi giờ của khu vực

date_default_timezone_set()

date_default_timezone_set("Asia/Ho_Chi_Minh");
echo $now = date("d/m/Y H:i:s"); // 26/09/2014 14:27:08

Tổng hợp các định dạng ngày tháng năm

Day

ĐỊNH DẠNG GIẢI THÍCH VÍ DỤ
d Ngày trong tháng, có kí tự 0 cho các ngày từ 1 → 9 01 đến 31
D Tên viết tắt của các thứ trong tuần Mon, Tue, Web, Thu, Fri, Sat, Sun
j Ngày trong tháng, không có kí tự 0 cho các ngày từ 1 → 9 1 đến 31
l Tên đầy đủ các thứ trong tuần Monday đến Sunday
w Số thứ tự của ngày trong tuần, bắt đầu đếm từ Sunday là ngày 0 Từ 0 → 6 (Sun → Sat)
z Số thứ tự của ngày trong năm Từ 0 → 365

Week

ĐỊNH DẠNG GIẢI THÍCH VÍ DỤ
W Tuần trong năm 39 (tuần thứ 39 trong năm)

Month

ĐỊNH DẠNG GIẢI THÍCH VÍ DỤ
F Tên đầy đủ của tháng January → December
m Số thứ tự của tháng, có số 0 với các số từ 1 → 9 01 → 12
M Tên viết tắt của tháng Jan → Dec
sn Số thứ tự của tháng, không có số 0 với các số từ 1 → 9 1 → 12
t Số ngày trong 1 tháng 28 → 31

Year

ĐỊNH DẠNG GIẢI THÍCH VÍ DỤ
Y Năm có 4 ký số 2014, 2015
y Năm có 2 ký số 14, 15

Time

ĐỊNH DẠNG GIẢI THÍCH VÍ DỤ
a Ký hiệu buổi sáng và chiều, chữ thường am hoặc pm
A Ký hiệu buổi sáng và chiều, chữ HOA AM hoặc PM
g Giờ theo kiểu 12 tiếng/ngày, không có số không với các số từ 1 → 9 1 → 12
G Giờ theo kiểu 24 tiếng/ngày, không có số không với các số từ 1 -> 9 0 → 23
h Giờ theo kiểu 12 tiếng/ngày, có số không với các số từ 1 → 9 01 → 12
H Giờ theo kiểu 24 tiếng/ngày, có số không với các số từ 1 → 9 01 → 23
i Phút 00 → 59
s Giây 00 → 59
IO Stream

IO Stream Co., Ltd

30 Trinh Dinh Thao, Hoa Thanh ward, Tan Phu district, Ho Chi Minh city, Vietnam
+84 28 22 00 11 12
developer@iostream.co

383/1 Quang Trung, ward 10, Go Vap district, Ho Chi Minh city
Business license number: 0311563559 issued by the Department of Planning and Investment of Ho Chi Minh City on February 23, 2012

©IO Stream, 2013 - 2024