拆分DATETIME

时间:2015-08-10 18:04:13

标签: php html datetime

我想要将DATETIME分开,以便我可以在其间放置一个“at”字符串,以便它可以读取:

2015年8月10日下午2:05

function fixDate($strDateTime) {

    $strFormat = 'm-d-Y';
    $intTimeStamp = strtotime($strDateTime);
    $strDate = date($strFormat, $intTimeStamp);
    $strTime = date('H:i', $intTimeStamp);

    if($strDate == date($strFormat)) {
        return "Today " . $strTime;
    }
    elseif($strDate == date($strFormat, strtotime('yesterday'))) {
        return "Yesterday " . $strTime;
    }
    else {
        return $strDate . " " . $strTime;
    }
}

$date = $row['topic_date'];
$date = fixDate($date);

HTML部分

<span>on<?php echo ' '.$date; ?></span>

我无法弄清楚如何在日期和时间之间加上“at”,然后在日期中读取字符串数月而不是整数,以及时间不在军事时间。

我该怎么做?

1 个答案:

答案 0 :(得分:2)

使用@ MarcB评论

将您的功能更改为这样运行
function fixDate($strDateTime) {

    $strFormat = 'M, j, Y';
    $strFormatTime = '\a\t g:ia';
    $intTimeStamp = strtotime($strDateTime);
    $strDate = date($strFormat, $intTimeStamp);
    $strTime = date($strFormatTime, $intTimeStamp);

    if($strDate == date($strFormat)) {
        return "Today " . $strTime;
    }
    elseif($strDate == date($strFormat, strtotime('yesterday'))) {
        return "Yesterday " . $strTime;
    }
    else {
        return $strDate . " " . $strTime;
    }
}

$date = $row['topic_date'];
$date = fixDate($date);