WordPress Chuyển đổi Utc sang Giờ địa phương

Tôi đã có một khoảng thời gian khủng khiếp khi chuyển đổi từ dấu thời gian UTC được lưu trữ trong cơ sở dữ liệu WordPress sang giờ địa phương được đặt trong bảng quản trị. Cuối cùng tôi đã viết một hàm nhỏ tiện dụng sau đây để chuyển đổi thời gian một cách dễ dàng. Có thể có một cách tốt hơn để làm điều này, vì vậy nếu bất kỳ ai trong số các bạn biết về một giải pháp cải tiến, vui lòng cho tôi biết trong phần nhận xét 😀

/*
* Converts UTC time to local time as set in WordPress
* Processes data in the format "Y-m-d H:i:s" (same format as used in WordPress core)
*
* @author Ryan Hellyer 
*/
function convert_time( $time ) {
$timestamp = strtotime( $time ); // Converting time to Unix timestamp
$offset = get_option( 'gmt_offset' ) * 60 * 60; // Time offset in seconds
$local_timestamp = $timestamp + $offset;
$local_time = date_i18n( 'Y-m-d H:i:s', $local_timestamp );
return $local_time;
}

$time = '2012-08-03 12:33:07';
echo convert_time( $time );

Để truy xuất thời gian hiện tại dưới dạng một đối tượng có múi giờ từ cài đặt quản trị viên WordPress, hãy sử dụng hàm current_datetime() (WordPress. tham chiếu mã tổ chức)

Để làm việc với phần bù múi giờ, hãy sử dụng wp_date() (WordPress) để tải xuống đối tượng DateTimeZone. tham chiếu mã tổ chức)

// usage example of DateTimeZone() and wp_date()
$timezone = new DateTimeZone( 'Asia/Singapore' );
wp_date("d-m-Y H:i:s", null, $timezone );
Sao chépĐã sao chép

Không sử dụng date_default_timezone_set(). Lõi WordPress yêu cầu múi giờ trong PHP là GMT+0. Một số tính năng phụ thuộc vào điều này và sẽ bị hỏng nếu múi giờ được điều chỉnh

current_time( 'timestamp' ) không còn được đề xuất vì WordPress. 3

Bài đăng Cải tiến Ngày/Giờ được viết tốt có sẵn để giải thích sâu hơn về cách làm việc với múi giờ

get_gmt_from_date( chuỗi $string , $string , $string , $string , $string , $string , $string , $string , $string , $string , $string , $string , $string , chuỗi $format = 'Y-m-d H. i. s' ). chuỗi

Đưa ra một ngày trong múi giờ của trang web, trả về ngày đó trong UTC

nội dung


Yêu cầu và trả về một ngày trong Y-m-d H. i. định dạng s.
Định dạng trả về có thể được ghi đè bằng tham số $format.


$string chuỗi Bắt buộc

Ngày được chuyển đổi, theo múi giờ của trang web

$format chuỗi Tùy chọn

Chuỗi định dạng cho ngày trả về

Mặc định. 'Y-m-d H:i:s'


chuỗi là phiên bản định dạng của ngày, theo UTC.


Tập tin.

// usage example of DateTimeZone() and wp_date()
$timezone = new DateTimeZone( 'Asia/Singapore' );
wp_date("d-m-Y H:i:s", null, $timezone );
0. Xem tất cả tài liệu tham khảo

function get_gmt_from_date( $string, $format = 'Y-m-d H:i:s' ) {
	$datetime = date_create( $string, wp_timezone() );

	if ( false === $datetime ) {
		return gmdate( $format, 0 );
	}

	return $datetime->setTimezone( new DateTimeZone( 'UTC' ) )->format( $format );
}


UsesUsDescriptionwp_timezone() wp-gồm/hàm. php

Truy xuất múi giờ của trang web dưới dạng đối tượng

// usage example of DateTimeZone() and wp_date()
$timezone = new DateTimeZone( 'Asia/Singapore' );
wp_date("d-m-Y H:i:s", null, $timezone );
1

Được sử dụng bởiĐược sử dụng bởiMô tảWP_REST_Posts_Controller. chuẩn bị_item_for_response() wp-includes/rest-api/endpoints/class-wp-rest-posts-controller. php

Chuẩn bị một đầu ra bài đăng duy nhất để phản hồi

rest_get_date_with_gmt() trong wp-gồm/phần còn lại. php

Phân tích một ngày thành cả tương đương cục bộ và UTC, ở định dạng ngày giờ của MySQL

_wp_translate_postdata() wp-admin/includes/post. php

Đổi tên dữ liệu

// usage example of DateTimeZone() and wp_date()
$timezone = new DateTimeZone( 'Asia/Singapore' );
wp_date("d-m-Y H:i:s", null, $timezone );
2 từ tên biểu mẫu thành cột bài đăng DB

WP_Customize_Manager. save() wp-includes/class-wp-customize-manager. php

Xử lý yêu cầu custom_save WP Ajax để lưu/cập nhật bộ thay đổi

_future_post_hook() wp-includes/post. php

Móc được sử dụng để lên lịch xuất bản cho một bài đăng được đánh dấu cho tương lai

wp_insert_post() wp-gồm/bài đăng. php

Chèn hoặc cập nhật một bài viết

wp_xmlrpc_server. _convert_date_gmt() wp-includes/class-wp-xmlrpc-server. php

Chuyển đổi chuỗi ngày GMT của WordPress thành đối tượng IXR_Date

wp_update_comment() wp-gồm/bình luận. php

Cập nhật một bình luận hiện có trong cơ sở dữ liệu

wp_insert_comment() wp-gồm/bình luận. php

Chèn một bình luận vào cơ sở dữ liệu


Nhật ký thay đổiPhiên bảnMô tả1. 2. 0Giới thiệu

  1. Bạn phải đăng nhập để bình chọn về mức độ hữu ích của ghi chú nàyKết quả bình chọn cho ghi chú này. 3Bạn phải đăng nhập để bình chọn về mức độ hữu ích của ghi chú này

    Đóng góp bởi Jason Coleman

    Nghịch đảo của điều này là get_date_from_gmt

    https://www. // nhà phát triển. báo chí. org/tham chiếu/chức năng/get_date_from_gmt/

    Đăng nhập để thêm phản hồi

Bạn phải đăng nhập trước khi có thể đóng góp ghi chú hoặc phản hồi

Được sử dụng bởiĐược sử dụng bởiMô tảWP_REST_Posts_Controller. chuẩn bị_item_for_response() wp-includes/rest-api/endpoints/class-wp-rest-posts-controller. php

Chuẩn bị một đầu ra bài đăng duy nhất để phản hồi

rest_get_date_with_gmt() trong wp-gồm/phần còn lại. php

Phân tích một ngày thành cả tương đương cục bộ và UTC, ở định dạng ngày giờ của MySQL

_wp_translate_postdata() wp-admin/includes/post. php

Đổi tên dữ liệu

// usage example of DateTimeZone() and wp_date()
$timezone = new DateTimeZone( 'Asia/Singapore' );
wp_date("d-m-Y H:i:s", null, $timezone );
2 từ tên biểu mẫu thành cột bài đăng DB

WP_Customize_Manager. save() wp-includes/class-wp-customize-manager. php

Xử lý yêu cầu custom_save WP Ajax để lưu/cập nhật bộ thay đổi

_future_post_hook() wp-includes/post. php

Móc được sử dụng để lên lịch xuất bản cho một bài đăng được đánh dấu cho tương lai

wp_insert_post() wp-gồm/bài đăng. php

Chèn hoặc cập nhật một bài viết

wp_xmlrpc_server. _convert_date_gmt() wp-includes/class-wp-xmlrpc-server. php

Chuyển đổi chuỗi ngày GMT của WordPress thành đối tượng IXR_Date

wp_update_comment() wp-gồm/bình luận. php

Cập nhật một bình luận hiện có trong cơ sở dữ liệu

wp_insert_comment() wp-gồm/bình luận. php

Chèn một bình luận vào cơ sở dữ liệu

Làm cách nào để chuyển đổi thời gian UTC sang PHP?

$time = strtotime($utc . ' UTC'); . i. s", $time); echo $dateInLocal; php.

Làm cách nào để chuyển đổi UTC sang GMT trong PHP?

Làm cách nào để bạn chuyển đổi UTC sang GMT? .
Giờ Phối hợp Quốc tế đi trước 0 giờ so với Giờ chuẩn Greenwich. số 8. 00 giờ sáng theo giờ UTC là. 00 giờ sáng theo giờ GMT
8. 00 giờ sáng Giờ phối hợp quốc tế (UTC). Bù đắp UTC. 00 giờ. số 8. 00 giờ sáng Giờ chuẩn Greenwich (GMT). Bù đắp UTC. 00 giờ
8. 00 giờ sáng UTC /. 00 giờ sáng theo giờ GMT

Làm cách nào để đặt giờ địa phương trong PHP?

Hàm localtime() là một hàm có sẵn trong PHP dùng để trả về giờ địa phương. Mảng được trả về bởi hàm localtime() tương tự như cấu trúc được trả về bởi lệnh gọi hàm C. .
PHP. hàm idate()
PHP. thời gian ( ) Chức năng
PHP. hàm strptime()

Làm cách nào để chuyển đổi giờ UTC thành giờ địa phương trong Javascript?

Sử dụng hàm tạo Date() để chuyển đổi UTC thành giờ địa phương , e. g. Ngày mới (utcDateStr). Truyền một chuỗi ngày và giờ ở định dạng ISO 8601 cho hàm tạo Date() sẽ chuyển đổi ngày và giờ UTC thành giờ địa phương.