1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Laravel8 Blade上の記述で"〇日前"と表示する

Posted at

Blade上の記述で、DBから取得した"Y-m-d H:i:s"フォーマットの日時が何日前かを表示する

コード

           <p>
              @php
                 $var = \Carbon\Carbon::parse(年月日)->diffInDays(\Carbon\Carbon::now())
              @endphp
              @switch( $var )
                 @case(0)
                     今日
                     @break
                 @case(1)
                     昨日
                     @break
                 @default
                     {{ $var }}日前
              @endswitch
           </p>

説明

PHPのDateTimeを拡張したパッケージの日付ライブラリ「Carbon」を使います。

$var = \Carbon\Carbon::parse(年月日)->diffInDays(\Carbon\Carbon::now())

Carbonライブラリのparse()を使って、年月日の文字列からインスタンスを作成します。
そこからdiffInDays()を使って現在の日付との差を出します。

    @switch( $var )
        @case(0)
            今日
            @break
        @case(1)
            昨日
            @break
        @default
            {{ $var }}日前
    @endswitch

あとは、1日前なら「今日」、2日前なら「昨日」、それ以降なら「〇日前」と表記するようにします。

最後に

こうした方が良いや、間違っている箇所があれば教えてください。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?