0

mySQL DB から 3 つの最新の投稿が foreach ループに使用している関数があります。

function latest_posts_footer(PDO $dbh) {
    global $dbh;

    $stmt = $dbh->prepare("
        SELECT      *
        FROM        posts
        ORDER BY    post_date DESC
        LIMIT       0, 3
    ");
    $stmt->execute();
    return $stmt->fetchAll();
}
latest_posts_footer($dbh);
$latest_posts_footer = latest_posts_footer($dbh);

post_date タイプは正しく機能する DATETIME です。

私は、次のクエリSELECT YEAR(post_date) FROM posts;が post_date の年を教えてくれることを知っています。

生の DATETIME を表示するには、次のようにします。

ループ

出力は2000-01-01 00:00:00になります。

PHPでその出力からYEARのみを取得するにはどうすればよいですか? 助けていただければ幸いです。ありがとう!

PS同じことに関する以前の投稿をすでに調べましたが、役に立ちません。

4

3 に答える 3

4
$year = date("Y", strtotime($lpf['post_date']));

echo $year;
于 2012-08-22T01:12:00.807 に答える
1

正確にはどういう意味YEARですか?

$yearOnly = date("Y", $lpf['post_date']);

PHPDATEマニュアル

于 2012-08-22T01:14:41.057 に答える
0

ここにヒントがあります

 $date = DateTime::createFromFormat("Y-m-d", "2068-06-15");
 echo $date->format("Y");

ここで何か誤解していない限り

于 2012-08-22T01:10:23.543 に答える