我正在尝试将 2010-02 转换为 2010 年 2 月。但是,我一直得到 1969 年 12 月
我尝试过使用 mktime、strtotime 以及两者的某种组合,但仍然无法做到......
这是我最近尝试的...
$path_title = date('F, Y', mktime(0,0,0,2,0,2010));
最佳答案
这是一种方法:
$dateString = '2010-02';
list($year, $month) = explode('-', $dateString);
$timeStamp = mktime(0, 0, 0, $month, 1, $year);
echo date('F, Y', $timestamp);
另一种方式是:
$dateString = '2010-02';
$timestamp = strtotime($dateString . '-01');
echo date('F, Y', $timestamp);
strtotime
无法处理诸如“2010-02”之类的模糊日期,但如果您将其设为完整日期,它应该可以正常工作。
否则,您可能需要查看类似 DateTime::createFromFormat
的内容.
关于php - mktime 还是 strtotime?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2226354/