1)我在设置>中设置时区Wordpress 4.9.4一般像这样:
Timezone: Jakarta
Date Format: j F Y
Time Format: H:i
2)我有来自this的印尼日历时间功能代码:
function indonesian_date ($timestamp = '', $date_format = 'l, j F Y | H:i', $suffix = 'WIB') {
if (trim ($timestamp) == '')
{
$timestamp = time ();
}
elseif (!ctype_digit ($timestamp))
{
$timestamp = strtotime ($timestamp);
}
# remove S (st,nd,rd,th) there are no such things in indonesia :p
$date_format = preg_replace ("/S/", "", $date_format);
$pattern = array (
'/Mon[^day]/','/Tue[^sday]/','/Wed[^nesday]/','/Thu[^rsday]/',
'/Fri[^day]/','/Sat[^urday]/','/Sun[^day]/','/Monday/','/Tuesday/',
'/Wednesday/','/Thursday/','/Friday/','/Saturday/','/Sunday/',
'/Jan[^uary]/','/Feb[^ruary]/','/Mar[^ch]/','/Apr[^il]/','/May/',
'/Jun[^e]/','/Jul[^y]/','/Aug[^ust]/','/Sep[^tember]/','/Oct[^ober]/',
'/Nov[^ember]/','/Dec[^ember]/','/January/','/February/','/March/',
'/April/','/June/','/July/','/August/','/September/','/October/',
'/November/','/December/',
);
$replace = array ( 'Sen','Sel','Rab','Kam','Jum','Sab','Min',
'Senin','Selasa','Rabu','Kamis','Jumat','Sabtu','Minggu',
'Jan','Feb','Mar','Apr','Mei','Jun','Jul','Ags','Sep','Okt','Nov','Des',
'Januari','Februari','Maret','April','Juni','Juli','Agustus','Sepember',
'Oktober','November','Desember',
);
$date = date ($date_format, $timestamp);
$date = preg_replace ($pattern, $replace, $date);
$date = "{$date} {$suffix}";
return $date;
}
3)显示日历的代码:
<?php
$timestamp = current_time( 'timestamp', true );
echo indonesian_date($timestamp, 'l, j F Y | H:i', 'WIB');
?>
我的问题: 日历时间显示:Senin,19 Maret 2018 | 23:15 WIB 应该是这样的:Senin,19 Maret 2018 | 06:15 WIB
时钟计算有差异,23:15 WIB和06:15 WIB。我应该如何修复现有代码?