Cả PHP và MySQL đều hỗ trợ định dạng ngày tháng. Chọn nơi xử lý tùy kiến trúc ứng dụng.
1. Trong PHP
Dùng date('d/m/Y', strtotime($chuoi_ngay)):
$loginDate = strtotime('2019-01-12');
echo date('d/m/Y', $loginDate); // 12/01/2019
Các format thường dùng:
d/m/Y→ 31/12/2023d-m-Y→ 31-12-2023Y-m-d→ 2023-12-31 (ISO, khuyến nghị lưu DB)
2. Trong MySQL
Dùng DATE_FORMAT(cot, '%d/%m/%Y'):
SELECT DATE_FORMAT(cot_datetime, '%d/%m/%Y') AS DateFormat FROM ten_bang;
Ví dụ minh họa MySQL
Tạo bảng Date_FormatDemo:
CREATE TABLE Date_FormatDemo (
Id INT NOT NULL AUTO_INCREMENT,
LoginDate DATETIME, PRIMARY KEY (Id)
);
INSERT INTO Date_FormatDemo (LoginDate) VALUES
(CURDATE()), (NOW()), ('2019-11-12'),
(DATE_ADD(NOW(), INTERVAL 2 DAY)), (DATE_ADD(CURDATE(), INTERVAL -2 DAY));
Truy vấn định dạng dd/mm/yyyy
SELECT DATE_FORMAT(LoginDate, '%d/%m/%Y') AS DateFormat FROM Date_FormatDemo;
Kết quả:
+------------+
| DateFormat |
+------------+
| 12/01/2019 |
| 12/01/2019 |
| 12/11/2019 |
| 14/01/2019 |
| 10/01/2019 |
+------------+
Khuyến nghị:
- Lưu trữ trong DB:
DATETIME/TIMESTAMP(hoặcDATE) – **không lưu chuỗi định dạng**. - Định dạng hiển thị: làm ở tầng ứng dụng (PHP, Java, JS...) hoặc MySQL nếu chỉ xuất báo cáo đơn giản.
- Luôn dùng chuẩn ISO
YYYY-MM-DDkhi truyền dữ liệu giữa hệ thống.