役立つ情報
登録日: 2025-01-27   最終更新日: 2025-03-19

Laravel日付フォーマットエラー

DB取得データを日付フォーマットに変換して表示

DB取得データを日付フォーマットに変換して表示する場合は、以下のようにすると、YYYY/MM/DD形式で日付を表示することが可能。


<span>{{ $dbDatas->dateColumn->format('Y/m/d/') }}</span>

エラーが派生した場合

以下のようなエラーが発生した場合は、Modelに定義を追加して日付変換できるようにします。


Call to a member function format() on string

Model定義追加

$casts 定義を追記します。


<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class ExSample extends Model
{
    use HasFactory;

    protected $table = 'exsample';
    protected $primaryKey = 'id';

    /**
     * テーブルに関連付ける型
     *
     * @var array
     */
    protected $casts = [
        'upddt' => 'datetime',
    ];
}

$castsの型一覧

  • array
  • AsStringable::class
  • boolean
  • collection
  • date
  • datetime
  • immutable_date
  • immutable_datetime
  • decimal:
  • double
  • encrypted
  • encrypted:array
  • encrypted:collection
  • encrypted:object
  • float
  • integer
  • object
  • real
  • string
  • timestamp

Copyright 役立つ情報.net