0

我知道实际上有成千上万个类似的问题,但不要问是否没有必要。

我进行了很多研究,发现所有使用标准 PHP 函数转换日期的解决方案,如果要转换为标准的日期,它可以完美地工作,而不是在我的情况下。

我从第三方网站获取数据,该网站以下列格式返回日期:

12/20/2012 14:34 -> d/m/Y H:m

请注意,除了奇怪的模式没有秒。

问题是我尝试将这些解决方案用作标准 strtotime 以及一些功能,但没有解决我的问题。我最终创建了以下解决方案:

<?php

$data = '20/12/2012 14:34';

$teste = explode('/', $data);
$teste2 = explode(' ',  $teste['2']);

$final = $teste2['0'] . '-' .$teste['1'] .'-'. $teste['0']. ' '. $teste2['1'].':00';

echo $final;

完美运行,但正如您所见,它并不优雅。有更多经验的人可能会提出更好的解决方案?

4

1 回答 1

2

这就是我想出的:

$date = '20/12/2012 14:34';
$date = str_replace('/', '-', $date);
$date = strtotime($date);

$newdate = date('d-m-Y H:i:s', $date);
echo($newdate);
//returns 20-12-2012 14:34:00

我对您要查找的格式感到困惑,但您可以在date()函数内切换日期规范。有关PHP 的更多信息,请参见此处date()

于 2013-02-07T04:39:51.910 回答