Visible
Define visible attributes
Description: Defines the attributes that should be visible in model serialization (toArray / toJson).
Namespace: Illuminate\Database\Eloquent\Attributes\Visible
Added in: Laravel 13.0
Usage
use Illuminate\Database\Eloquent\Attributes\Visible;
use Illuminate\Database\Eloquent\Model;
// Before:
protected $visible = ['id', 'name', 'email'];
use Illuminate\Database\Eloquent\Attributes\Visible;
use Illuminate\Database\Eloquent\Model;
// After:
#[Visible(['id', 'name', 'email'])]
class User extends Model
{
//
}
Variadic form is also supported:
#[Visible('id', 'name', 'email')]
class User extends Model
{
//
}