日期时间从外部资源中读取并存储在 $dt 中,它可以是任何有效的 PHP 日期时间格式(有效意味着日期时间已经由包含php.net 手册中描述的字母的字符串格式化)。
我需要做的是获取日期时间字符串的格式,因此在根据系统需要操作日期之后,我可以将其重新格式化为相同的字符串并将其存储在数据库中。简单地说:与 DateTime::format 方法相反
是否有任何特定方法可以提取格式化日期时间的“格式字符串”?或可用的代码?
日期时间从外部资源中读取并存储在 $dt 中,它可以是任何有效的 PHP 日期时间格式(有效意味着日期时间已经由包含php.net 手册中描述的字母的字符串格式化)。
我需要做的是获取日期时间字符串的格式,因此在根据系统需要操作日期之后,我可以将其重新格式化为相同的字符串并将其存储在数据库中。简单地说:与 DateTime::format 方法相反
是否有任何特定方法可以提取格式化日期时间的“格式字符串”?或可用的代码?
这是不可能的,因为格式化的日期不能包含足够的信息。您将不得不编写一组正则表达式来匹配您真正用作输入的格式 - 一个接一个。
您可以将它们全部带到一个 unix 时间戳,然后使用 date 来获得一个标准化的形式。或者您可以首先标准化您的输入(这通常是更容易的选择 - 因为错误捕获将是一件麻烦事!)
\\$dt your datetime input
$timestring = strtotime($dt);
$datetime = date("H:i:s j M Y", $timestring);
当然,strtotime
如果你的输入很奇怪,你可能会得到一些有趣的输出。