Hàm date[]
sẽ xuất ra một chuỗi thời gian dựa theo định dạng được truyền vào và số nguyên timestamp.
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
Cú pháp
Cú pháp: date[ $format, $timestamp];
Trong đó:
$forma
t là định dạng thời gian mà hàm sẽ trả về.$timestamp
là một số nguyên Unix timestamp. nếu không truyền tham số này, nó sẽ lấy timestamp của thời điểm hiện tại.
Kết quả trả về
Hàm sẽ trả về một chuỗi thời gian đúng với định dạng $format
đã truyền vào nếu chạy thành công. Nếu $timestamp
truyền vào không phải là số hàm sẽ trả về FALSE và sẽ xuất ra cảnh báo.
Bài viết này được đăng tại [free tuts .net]
Ví dụ
Cách sử dụng hàm $date[]
lấy thời gian hiện tại.
Code
echo date["F j, Y, g:i a"]."
"; echo date["m.d.y"]."
"; echo date["j, n, Y"]."
"; echo date["Ymd"]."
"; echo date['h-i-s, j-m-y, it is w Day']."
"; echo date['\i\t \i\s \t\h\e jS \d\a\y.']."
"; echo date["D M j G:i:s T Y"]."
"; echo date['H:m:s \m \i\s\ \m\o\n\t\h']."
"; echo date["H:i:s"]."
"; echo date["Y-m-d H:i:s"]."
";
Kết quả
May 4, 2017, 2:22 pm 05.04.17 4, 5, 2017 20170504 02-22-35, 4-05-17, 2231 2235 4 Thupm17 it is the 4th day. Thu May 4 14:22:35 ICT 2017 14:05:35 m is month 14:22:35 2017-05-04 14:22:35
Định dạng thời gian tại một thời điểm nào đó.
Code
$date = mktime[15,50,30,4,30,2017]; echo date["F j, Y, H:i a", $date]."
"; echo date["Y-m-d H:i:s", $date]."
";
Kết quả
April 30, 2017, 15:50 pm 2017-04-30 15:50:30
Tham khảo: php.net
Đã đăng vào thg 11 16, 2020 10:06 SA 3 phút đọc
Vấn đề xử lý ngày tháng cực kì quan trọng khi bạn xử lý với các bài viết và đăng lên website. Ví dụ bạn cần in 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 tháng trong PHP thì mới làm được. Đó là vấn đề căn 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. Thiết lập time_zone tại Việt Nam
Để thiết lập time_zone ta làm theo cú pháp:
date_default_timezone_set['Tên Time Zone'];
Lệnh này sẽ ảnh hưởng tới 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 thì bạn nên để lệnh này ở đầu file của chương trình .Để thiết lập time_zone ở Việt Nam thì bạn sử dụng lệnh sau:
date_default_timezone_set['Asia/Ho_Chi_Minh'];
Để xem danh sách time zone thì bạn sử dụng đoạn code 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
Hàm date dùng để chuyển đổi thời gian theo format mà lập trình viên mong muốn, cú pháp như sau:
date [$format, $timestamp = 'time[]']
Trong đó:
$format
là định dạng mà hàm này sẽ trả về$timestamp
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à hàm time[]].
Sau đây mình sẽ liệt kê một số định dạng hay sử dụng nhất.
- d: trả về ngày tháng [số]
- D: trả về ngày của tháng [tiếng Anh]
- m: trả về tháng của năm [số]
- M: Trả về tháng của năm [tiếng Anh]
- y: trả trả về năm [2 số cuối của năm]
- Y: trả về năm đầy đủ 4 số
- H: trả về số giờ [kiểu 24h]
- h: trả về số giờ [kiểu 6h]
- i: trả về số phút
- s: trả về số giây
- c: trả về thời gian kiểu ISO 8601, thường dùng tạo cho thẻ meta publish time trong SEO
Ví dụ: Lấy 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 tháng nâng cao trong PHP
- Chuyển đổi thời gian sang kiểu INT
Để chuyển đổi thời gian sang kiểu INT thì ta sử dụng hàm strtotime[$time]
:
echo strtotime[date['Y-m-d H:i:s']];
- Xử lý cộng trừ
ngày tháng với hàm
mktime[]
Hàmmktime[]
sẽ tính toán đưa ra ngày chính xác bởi các tham số truyền vào, cú pháp như sau:
mktime [$hour, $minute, $second, $month, $day , $year];
Lư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 ra định dạng mong muốn.
Cảm ơn các bạn đã đọc bài!
Tài liệu tham khảo:
//www.php.net/manual/en/function.date.php
//freetuts.net/xu-ly-ngay-thang-trong-php-649.html
All rights reserved