Memo cách lấy thứ trong PHP từ ngày hiện tại hoặc một ngày bất kỳ, cũng như lấy thứ đó dưới dạng tiếng Việt hoặc bằng ngôn ngữ nào đó.
Lấy thứ hiện tại trong PHP
Trong PHP chúng ta có thể dùng phương thức format() để lấy số thứ tự của ngày trong tuần (Chủ nhật, thứ 2, thứ 3, …, thứ 7 ứng với 0, 1, 2, …, 6).
Ứng dụng format() kết hợp với một mảng array, chúng ta có thể lấy thứ hiện tại trong PHP từ ngày hiện tại như dưới đây:
<?php
$datetime = new DateTime();
$week = array("Sunday", "Monday", "Tuesday", "Wednesday ", "Thursday ", "Friday ", "Saturday ");
$w = (int)$datetime->format('w');
$day_of_week = $week[$w];
print($day_of_week);
//Tuesday
?>
Lại nữa, bằng cách thay đổi giá trị của mảng week, chúng ta cũng có thể lấy thứ bằng tiếng Việt trong PHP như sau:
<?php
$datetime = new DateTime();
$week = array("CN", "T2", "T3", "T4", "T5", "T6", "T7");
$w = (int)$datetime->format('w');
$day_of_week = $week[$w];
print($day_of_week);
//T3
?>
Lấy thứ từ ngày bất kỳ trong PHP
Một cách tương tự chúng ta cũng có thể lấy thứ từ ngày bất kỳ trong PHP bằng cách thay đổi đối số của hàm DateTime() như ví dụ sau:
<?php
$str = "2022-05-08 20:08:08";
$datetime = new DateTime($str);
$week = array("CN", "T2", "T3", "T4", "T5", "T6", "T7");
$w = (int)$datetime->format('w');
$day_of_week = $week[$w];
print($day_of_week);
//CN
?>
Kết luận
Thế là xong mẹo nhỏ giúp chúng ta lấy thứ trong PHP từ ngày hiện tại hoặc một ngày bất kỳ, cũng như lấy thứ đó dưới dạng tiếng Việt hoặc bằng ngôn ngữ nào đó.
Bình luận