使用php将mySQL数据库的字符串转换为日期时间

使用php将mySQL数据库的字符串转换为日期时间,php,mysql,xml,datetime,Php,Mysql,Xml,Datetime,我是一名计算机科学专业的学生,我的部分作业被难倒了。我们必须解析XML文件并将其保存在mySQL数据库中。我遇到的问题是XML文件中有一个名为pubDate的元素,其字符串格式如下: 2013年11月4日星期一11:08:58-0600 我已经在多个网站上查看过,但没有找到任何方法将该字符串转换为dateTime 任何帮助都将不胜感激 感谢您可以尝试strotime()函数转换为unix时间戳,然后strftime()转换为mysql日期格式尝试php的strotime()函数,如果您的日期时间

我是一名计算机科学专业的学生,我的部分作业被难倒了。我们必须解析XML文件并将其保存在mySQL数据库中。我遇到的问题是XML文件中有一个名为pubDate的元素,其字符串格式如下:

2013年11月4日星期一11:08:58-0600

我已经在多个网站上查看过,但没有找到任何方法将该字符串转换为dateTime

任何帮助都将不胜感激


感谢

您可以尝试strotime()函数转换为unix时间戳,然后strftime()转换为mysql日期格式

尝试php的strotime()函数,如果您的日期时间存储在varchar、char或mysql中的文本中,请使用mysql STR_to_date()函数。

看看PHP新版本提供的功能。只要拥有字符串的原始格式,就可以轻松地将其转换为对象,然后再转换回所需的任何字符串格式

$d = DateTime::createFromFormat("D, d M Y h:i:s P", "Mon, 04 Nov 2013 11:08:58 -0600");
然后根据需要将其导出。

您可以这样使用

Thu, 07 Feb 2008 16:45:58+12:00
示例#1日期时间::设置时区()示例

$date = new DateTime( '2008-02-07 16:45:58', new DateTimeZone('Pacific/Nauru'));
echo $date->format('D, d M Y G:i:sP') . "\n";
面向对象风格

$date = new DateTime( '2008-02-07 16:45:58', new DateTimeZone('Pacific/Nauru'));
echo $date->format('D, d M Y G:i:sP') . "\n";
输出是这样的

Thu, 07 Feb 2008 16:45:58+12:00
请同时查看此链接