Cách chuyển đổi dấu thời gian Epoch / UNIX thành ngày / giờ có thể đọc được bình thường bằng Php 7.
- Nhận thời gian kỷ nguyên hiện tại trong PHP
- Chuyển đổi từ thời đại sang ngày bình thường trong PHP
- Chuyển đổi từ ngày bình thường sang kỷ nguyên trong PHP
- Chuyển đổi múi giờ trong PHP
- Thêm năm/tháng vào một ngày trong PHP
- Bình luận
Nhận thời gian kỷ nguyên hiện tại trong PHP
Chuyển đổi từ thời đại sang ngày bình thường trong PHP
time[] // current Unix timestamp
microtime[true] // microtime returns timestamp with microseconds [param: true=float, false=string]
Chuyển đổi từ ngày bình thường sang kỷ nguyên trong PHP
Chuyển đổi múi giờ trong PHP
$epoch = 1483228800;
echo date['r', $epoch]; // output as RFC 2822 date - returns local time
echo gmdate['r', $epoch]; // returns GMT/UTC time: Sun, 01 Jan 2017 00:00:00 +0000
Thêm năm/tháng vào một ngày trong PHP
Bình luận
$epoch = 1483228800;
$dt = new DateTime["@$epoch"]; // convert UNIX timestamp to PHP DateTime
echo $dt->format['Y-m-d H:i:s']; // output = 2017-01-01 00:00:00
Thời gian trả về một số nguyên với kỷ nguyên hiện tại:
Bạn có thể sử dụng mã múi giờ bên dưới [date_default_timezone_set] để chuyển múi giờ của ngày đầu vào. | 2. Sử dụng lớp DateTime. |
Trong các ví dụ trên "R" và "Y-M-D H: I: S" là các định dạng ngày PHP, các ví dụ khác: | Định dạng |
Đầu ra | r |
Thứ tư, ngày 15 tháng 3 năm 2017 12:00:00 +0100 [ngày RFC 2822] | c |
2017-03-15T12: 00: 00+01: 00 [ngày ISO 8601] | M/d/y |
Mar/15/2017
D-M-yConvert from human-readable date to epoch in PHP
15-03-2017
Y-M-D H: I: S & NBSP;
2017-03-15 12:00:00
echo strtotime["15 November 2017"];
// ... or ...
echo strtotime["2017/11/15"];
// ... or ...
echo strtotime["+10 days"]; // 10 days from now
Đầy đủ danh sách các tùy chọn định dạng
if [[strtotime["this is no date"]] === false] {
echo 'failed';
}
& nbsp; chuyển đổi từ ngày có thể đọc được của con người sang kỷ nguyên trong PHP
Có nhiều lựa chọn:
// object oriented
$date = new DateTime['01/15/2017']; // format: MM/DD/YYYY
echo $date->format['U'];
// or procedural
$date = date_create['01/15/2017'];
echo date_format[$date, 'U'];
1. Sử dụng 'Strtotime':
Strtotime phân tích cú pháp hầu hết các văn bản ngày tiếng Anh đến thời gian epoch/unix.
Điều quan trọng là kiểm tra xem việc chuyển đổi có thành công không:
// PHP 5.1+
date_default_timezone_set['UTC']; // optional
mktime [ $hour, $minute, $second, $month, $day, $year ];
// example: generate epoch for Jan 1, 2000 [all PHP versions]
echo mktime[0, 0, 0, 1, 1, 2000];
2. Sử dụng lớp DateTime:
Lớp DateTime PHP đẹp hơn để sử dụng:
Định dạng ngày 'U' chuyển đổi ngày thành dấu thời gian UNIX.
The PHP time zone handling takes care of daylight
saving times [list of available time zones].
Examples:
3. Sử dụng 'mktime':Convert date/time to another time zone
$TimeStr="2017-01-01 12:00:00";
$TimeZoneNameFrom="UTC";
$TimeZoneNameTo="Europe/Amsterdam";
echo date_create[$TimeStr, new DateTimeZone[$TimeZoneNameFrom]]
->setTimezone[new DateTimeZone[$TimeZoneNameTo]]->format["Y-m-d H:i:s"];
Phiên bản này là một rắc rối hơn nhưng hoạt động trên bất kỳ phiên bản PHP nào.
Thanks to Albert Scholtalbers.
Adding or subtracting years/months to a date
Đặt múi giờ của bạn
$currentDate = time[]; // get current date
echo "It is now: ".date["Y-m-d H:i:s", $currentDate]."\n ";
$date = strtotime[date["Y-m-d H:i:s", $currentDate] . " +1 year"]; // add 1 year to current date
echo "Date in epoch: ".$date."\n ";
echo "Readable date: ".date["Y-m-d H:i:s",$date]."\n ";
Sử dụng DATE_DEFAULT_TIMEZONE_SET để đặt/ghi đè múi giờ của bạn. Xử lý múi giờ PHP chăm sóc thời gian tiết kiệm ánh sáng ban ngày [danh sách các múi giờ có sẵn].
date_default_timezone_set['Europe/Amsterdam'];
date_default_timezone_set['America/New York'];
date_default_timezone_set['EST'];
date_default_timezone_set['UTC'];
& nbsp; chuyển đổi ngày/thời gian sang múi giờ khác« Epoch Converter Functions
[Php 4, Php 5, Php 7, Php 8]
Thời gian - Trả lại dấu thời gian UNIX hiện tại — Return current Unix timestamp
Sự mô tả
thời gian []: int[]: int
Ghi chú::
Dấu thời gian UNIX không chứa bất kỳ thông tin nào liên quan đến bất kỳ timezone địa phương nào. Nên sử dụng lớp DateTimeMimTable để xử lý thông tin ngày và thời gian để tránh những cạm bẫy đi kèm với dấu thời gian UNIX.DateTimeImmutable class for handling date and time information in order to avoid the pitfalls that come with just Unix timestamps.
Thông số
Chức năng này không có tham số.
Trả về giá trị
Trả về dấu thời gian hiện tại.
Ví dụ
Ví dụ #1 Thời gian [] Ví dụtime[] example
$epoch = 1483228800;
echo date['r', $epoch]; // output as RFC 2822 date - returns local time
echo gmdate['r', $epoch]; // returns GMT/UTC time: Sun, 01 Jan 2017 00:00:00 +0000
2Ví dụ trên sẽ xuất ra một cái gì đó tương tự như:
Ghi chú
Xem thêm
- Datetimeimmutable
- date [] - định dạng dấu thời gian unix
- Microtime [] - Trả về dấu thời gian UNIX hiện tại với micro giây