regex - 更改日期格式的 PHP 正则表达式

标签 regex preg-replace strtotime

我几乎尝试了 10 个小时来更改日期格式以满足我的需要,但没有成功。我已经通过以下示例尝试了 Preg_Replace Strotime 函数。

当前日期格式为:02-25-2006 想转换成:2006-02-25

以下是我尝试过的示例列表:

publishdate = "02-20-2012";  
echo preg_replace("/\d{2}-\d{2}-\d{4}/","$3/$1/$2",$publishdate); 

$dateString= '2006-09-14';
echo date("m/d/Y", strtotime($dateString));



$dateString1= '02-20-2012';
echo date("Y/m/d", strtotime($dateString1));



$date1 = '05-25-2010';
echo date('Y-m-d', strtotime($date1));

$dateString2= '02-20-2012';
echo preg_replace("/(\d{2})-(\d{4})-(\d{2})/","$2/$3/$1",$dateString2);  

最佳答案

最简单的方法是使用date_create_from_format:

$date1='02-25-2006';
echo($date1);
echo "<br>";
$newdate = date_format(date_create_from_format('m-d-Y', $date1),'Y-m-d'); 
echo $newdate;

那么输出将是2006-02-25

关于regex - 更改日期格式的 PHP 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9478387/

相关文章:

正则表达式从 bash 脚本中的字符串中提取第一个 float

regex - Flex 中的非贪婪正则表达式匹配

php - 如何从PHP中的字符串中删除文本到文本?

php - 如何替换 http ://or www with <a href. 。在 PHP 中

python re搜索语法来识别分布在多行上的文本模式

正则表达式匹配两个相同的连续字符

php - 使用 preg_replace 时如何增加替换字符串中的计数?

.net - .NET 中的 strtotime 等效项

php strtotime 用三个栏来检查 sql 中状态的更改

php - strtotime 可以处理分数吗?