Hàm date_create_from_format()
trong PHP là một phương thức được sử dụng để tạo một đối tượng DateTime từ một chuỗi ngày/tháng/năm theo định dạng cụ thể. Nó cho phép chuyển đổi các chuỗi ngày tháng có định dạng khác nhau thành đối tượng DateTime để dễ dàng xử lý và thực hiện các thao tác liên quan đến ngày tháng. Hãy cùng Vietnix tìm hiểu thêm về hàm date_create_from_format()
trong PHP qua bài viết sau đây.
Hàm date_create_from_format() là gì?
date_create_from_format()
là một hàm tích hợp sẵn trong PHP, được sử dụng để phân tích chuỗi thời gian theo định dạng đã chỉ định. Hàm này chấp nhận ba tham số và trả về DateTime mới nếu thành công hoặc false nếu thất bại.
Phương thức này rất hữu ích khi cần xử lý ngày tháng trong các định dạng khác nhau, giúp tránh những công đoạn phức tạp của việc phân tích ngày tháng thủ công.
Cú pháp
Dạng tổng quan chung:
date_create_from_format ( $format, $time, $timezone )
Dạng hướng đối tượng:
DateTime::createFromFormat ( $format, $time, $timezone )
Tham số
Hàm date_create_from_format()
sẽ yêu cầu 3 tham số có mô tả như sau:
- $format: Đây là tham số bắt buộc được sử dụng để chỉ định định dạng ngày. Chuỗi tham số sau được sử dụng trong định dạng.
- Day:
- d và j: Ngày trong tháng, 2 chữ số có hoặc không có số 0 đứng đầu.
- D và l: Một đại diện ký tự của một ngày.
- S: Hậu tố thứ tự tiếng Anh cho ngày trong tháng, 2 ký tự. Nó bị bỏ qua trong khi xử lý.
- z: Ngày trong năm (bắt đầu từ 0)
- Month:
- F và M: Trình bày bằng văn bản của một tháng, chẳng hạn như tháng 1 hoặc tháng 9
- m và n: Biểu diễn số của tháng, có hoặc không có số 0 đứng đầu
- Year:
- Y: Một đại diện số đầy đủ của một năm, 4 chữ số
- y: Một đại diện hai chữ số của một năm (được giả định là trong phạm vi 1970-2069, bao gồm)
- Time:
- a và A: Trước trưa và Sau trưa
- g và h: định dạng 12 giờ của một giờ có hoặc không có số 0 đứng đầu
- G và H: định dạng 24 giờ của một giờ có hoặc không có số 0 đứng đầu
- i: Số phút có số 0 đứng đầu
- s: Giây, với số 0 đứng đầu
- u: Micro giây (tối đa sáu chữ số)
- Timezone:
- e, O, P và T: Mã nhận dạng múi giờ hoặc chênh lệch với UTC theo giờ hoặc chênh lệch với UTC với dấu hai chấm giữa giờ và phút hoặc viết tắt múi giờ
- Ngày/Giờ đầy đủ (full Date/Time):
- U: Giây kể từ Kỷ nguyên Unix Timestamp (ngày 1 tháng 1 năm 1970 00:00:00 GMT)
- Khoảng trắng và dấu phân cách:
- (space): Một dấu cách hoặc một tab
- #: Một trong các ký hiệu phân tách sau: ;, :, /, .,, -, ( hoặc )
- ;, :, /, .,,, -, ( or ): Ký tự được chỉ định.
- ?: Một byte ngẫu nhiên
- *: Các byte ngẫu nhiên cho đến dấu phân cách hoặc chữ số tiếp theo
- !: Đặt lại tất cả các trường (thông tin năm, tháng, ngày, giờ, phút, giây, phân số và múi giờ) về Unix Epoch
- |: Đặt lại tất cả các trường (thông tin năm, tháng, ngày, giờ, phút, giây, phân số và múi giờ) về Unix Epoch nếu chúng chưa được phân tích cú pháp
- +: Nếu có định dạng định dạng này, dữ liệu theo sau trong chuỗi sẽ không gây ra lỗi mà thay vào đó là cảnh báo
- Day:
- $time: Tham số này được sử dụng làm chuỗi đại diện cho thời gian.
- $timezone: Tham số này được sử dụng làm đối tượng DateTimeZone đại diện cho múi giờ mong muốn.
Giá trị trả về
Hàm này trả về một phiên bản DateTime mới nếu thành công hoặc FALSE nếu thất bại.
Mọi người cũng xem:
Ví dụ minh hoạ hàm hàm date_create_from_format() trong PHP
<?php
// Declare a date in given format
$date = date_create_from_format('D-M-Y', 'monday-Feb-2018');
// Output date in given format
echo date_format($date, 'y-n-j');
?>
Output như sau: 18-2-5
Ví dụ 2:
<?php
// Declare a date in given format
$date = DateTime::createFromFormat('D-M-Y', 'monday-Feb-2018');
// Output date in given format
echo $date->format('Y-m-d');
?>
Output như sau: 2018-02-05
Lời kết
Vietnix hy vọng nội dung bài viết trên đã giúp bạn hiểu rõ hơn về hàm date_create_from_format()
trong PHP. Ngoài ra, bạn cũng có thể tham khảo thêm các bài viết khác tại vietnix.vn để hiểu hơn về lập trình, chúc bạn thành công!