Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php怎么实现时区转换

php怎么实现时区转换

藏色散人
藏色散人asal
2020-07-07 10:08:243787semak imbas

php时区转换的实现方法:首先自定义一个“dateTimeChangeByZone”方法;然后获取指定区域的时间,并确定要转换为指定时区的时间;接着设置好时间格式;最后通过自定义的方法实现时间转换即可。

php怎么实现时区转换

不同时区的时间互相转换

<?php
/**
 * @param string $dateTime 时间,如:2020-04-22 10:10:10
 * @param string $fromZone 时间属于哪个时区
 * @param string $toZone   时间转换为哪个时区的时间
 * @param string $format   时间格式,如:Y-m-d H:i:s
 * 时区选择参考:https://www.php.net/manual/zh/timezones.php 常见的如:UTC,Asia/Shanghai
 * 时间格式参考:https://www.php.net/manual/zh/datetime.formats.php
 *
 * @return string
 */
function dateTimeChangeByZone($dateTime, $fromZone, $toZone, $format = &#39;Y-m-d H:i:s&#39;)
{
    $dateTimeZoneFrom = new DateTimeZone($fromZone);
    $dateTimeZoneTo   = new DateTimeZone($toZone);
    $dateTimeObj      = DateTime::createFromFormat($format, $dateTime, $dateTimeZoneFrom);
    $dateTimeObj->setTimezone($dateTimeZoneTo);
 
    return $dateTimeObj->format($format);
}
 
echo dateTimeChangeByZone(&#39;2020-04-22 10:10:10&#39;, &#39;UTC&#39;, &#39;Asia/Shanghai&#39;, &#39;Y-m-d H:i:s&#39;);

结果:

2020-04-22 18:10:10

更多相关知识,请访问PHP中文网

Atas ialah kandungan terperinci php怎么实现时区转换. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn