与TimeZome格式的PHP DateTime



我正在尝试创建一个dateTime objet,但使用特定的datetimezone(服务器可以具有自己的datetimezone)。假设以下字符串:

$textoFecha = '15-30-10-2012'; //H-d-m-Y

如果我尝试这样做:

$fecha = DateTime::createFromFormat('H-d-m-Y', $textoFecha);
$fecha->setTimezone(new DateTimeZone("America/Costa_Rica"));

制造echo $fecha->format('H-d-m-Y')的结果是:

19-30-10-2012

我的问题是,如何设置DateTimeZome但保持给予值?(15-30-10-2012)

您必须在DateTime::createFromFormat中指定时区,如以下:

$textoFecha = '15-30-10-2012'; //H-d-m-Y
$fecha = DateTime::createFromFormat('H-d-m-Y', $textoFecha, new DateTimeZone("America/Costa_Rica"));
echo $fecha->format('H-d-m-Y'); // prints 15-30-10-2012

工作示例:http://codepad.viper-7.com/dqhdlw

相关内容

  • 没有找到相关文章

最新更新