Sie können dies auf drei Arten tun. Alle diese Lösungen hängen davon ab, dass das Datumsattribut keine Carbon-Instanz ist, was in Ihrem Fall der Fall ist.
- Ein Accessor für das Datumsattribut, um das gewünschte Format zurückzugeben:
In Ihrem Testmodell
Test.php
public function getDateAttribute($value)
{
return Carbon::createFromFormat('Y-m-d H', $value)->format('m');
}
Dies wirkt sich jedoch überall auf den Code aus.
- Die zweite Möglichkeit besteht darin, ein benutzerdefiniertes Attribut zu erstellen.
public function getFormattedDateAttribute()
{
return Carbon::createFromFormat('Y-m-d H', $this->date)->format('m');
}
- Die dritte Möglichkeit besteht darin, die Sammlung selbst zu bearbeiten.
$months = \App\Test::where('date', '<=', 'now()')
->orderBy('date', 'desc')
->pluck('date');
$months->each(function($month){
return Carbon::createFromFormat('Y-m-d H', $month)->format('m');
});