W3cubDocs

/Laravel 5.4

Model

class Model implements ArrayAccess, Arrayable, Jsonable, JsonSerializable, QueueableEntity, UrlRoutable (View source)

Traits

HasAttributes
HasEvents
HasGlobalScopes
HasRelationships
HasTimestamps
HidesAttributes
GuardsAttributes

Constants

CREATED_AT

The name of the "created at" column.

UPDATED_AT

The name of the "updated at" column.

Properties

static bool $snakeAttributes Indicates whether attributes are snake cased on arrays. from HasAttributes
static array $manyMethods The many to many relationship methods. from HasRelationships
bool $timestamps Indicates if the model should be timestamped. from HasTimestamps
bool $incrementing Indicates if the IDs are auto-incrementing.
bool $exists Indicates if the model exists.
bool $wasRecentlyCreated Indicates if the model was inserted during the current request lifecycle.

Methods

array attributesToArray()

Convert the model's attributes to an array.

from HasAttributes
array relationsToArray()

Get the model's relationships in array form.

from HasAttributes
mixed getAttribute(string $key)

Get an attribute from the model.

from HasAttributes
mixed getAttributeValue(string $key)

Get a plain attribute (not a relationship).

from HasAttributes
mixed getRelationValue(string $key)

Get a relationship.

from HasAttributes
bool hasGetMutator(string $key)

Determine if a get mutator exists for an attribute.

from HasAttributes
$this setAttribute(string $key, mixed $value)

Set a given attribute on the model.

from HasAttributes
bool hasSetMutator(string $key)

Determine if a set mutator exists for an attribute.

from HasAttributes
$this fillJsonAttribute(string $key, mixed $value)

Set a given JSON attribute on the model.

from HasAttributes
mixed fromJson(string $value, bool $asObject = false)

Decode the given JSON back into an array or object.

from HasAttributes
string fromDateTime(DateTime|int $value)

Convert a DateTime to a storable string.

from HasAttributes
array getDates()

Get the attributes that should be converted to dates.

from HasAttributes
$this setDateFormat(string $format)

Set the date format used by the model.

from HasAttributes
bool hasCast(string $key, array|string|null $types = null)

Determine whether an attribute should be cast to a native type.

from HasAttributes
array getCasts()

Get the casts array.

from HasAttributes
array getAttributes()

Get all of the current attributes on the model.

from HasAttributes
$this setRawAttributes(array $attributes, bool $sync = false)

Set the array of model attributes. No checking is done.

from HasAttributes
mixed|array getOriginal(string|null $key = null, mixed $default = null)

Get the model's original attribute values.

from HasAttributes
$this syncOriginal()

Sync the original attributes with the current.

from HasAttributes
$this syncOriginalAttribute(string $attribute)

Sync a single original attribute with its current value.

from HasAttributes
bool isDirty(array|string|null $attributes = null)

Determine if the model or given attribute(s) have been modified.

from HasAttributes
bool isClean(array|string|null $attributes = null)

Determine if the model or given attribute(s) have remained the same.

from HasAttributes
array getDirty()

Get the attributes that have been changed since last sync.

from HasAttributes
$this append(array|string $attributes)

Append attributes to query when building a query.

from HasAttributes
$this setAppends(array $appends)

Set the accessors to append to model arrays.

from HasAttributes
array getMutatedAttributes()

Get the mutated attributes for a given instance.

from HasAttributes
static void cacheMutatedAttributes(string $class)

Extract and cache all the mutated attributes of a class.

from HasAttributes
static void observe(object|string $class)

Register an observer with the Model.

from HasEvents
array getObservableEvents()

Get the observable event names.

from HasEvents
$this setObservableEvents(array $observables)

Set the observable event names.

from HasEvents
void addObservableEvents(array|mixed $observables)

Add an observable event name.

from HasEvents
void removeObservableEvents(array|mixed $observables)

Remove an observable event name.

from HasEvents
static void saving(Closure|string $callback)

Register a saving model event with the dispatcher.

from HasEvents
static void saved(Closure|string $callback)

Register a saved model event with the dispatcher.

from HasEvents
static void updating(Closure|string $callback)

Register an updating model event with the dispatcher.

from HasEvents
static void updated(Closure|string $callback)

Register an updated model event with the dispatcher.

from HasEvents
static void creating(Closure|string $callback)

Register a creating model event with the dispatcher.

from HasEvents
static void created(Closure|string $callback)

Register a created model event with the dispatcher.

from HasEvents
static void deleting(Closure|string $callback)

Register a deleting model event with the dispatcher.

from HasEvents
static void deleted(Closure|string $callback)

Register a deleted model event with the dispatcher.

from HasEvents
static void flushEventListeners()

Remove all of the event listeners for the model.

from HasEvents
static Dispatcher getEventDispatcher()

Get the event dispatcher instance.

from HasEvents
static void setEventDispatcher(Dispatcher $dispatcher)

Set the event dispatcher instance.

from HasEvents
static void unsetEventDispatcher()

Unset the event dispatcher for models.

from HasEvents
static mixed addGlobalScope(Scope|Closure|string $scope, Closure $implementation = null)

Register a new global scope on the model.

from HasGlobalScopes
static bool hasGlobalScope(Scope|string $scope)

Determine if a model has a global scope.

from HasGlobalScopes
static Scope|Closure|null getGlobalScope(Scope|string $scope)

Get a global scope registered with the model.

from HasGlobalScopes
array getGlobalScopes()

Get the global scopes for this class instance.

from HasGlobalScopes
HasOne hasOne(string $related, string $foreignKey = null, string $localKey = null)

Define a one-to-one relationship.

from HasRelationships
MorphOne morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null)

Define a polymorphic one-to-one relationship.

from HasRelationships
BelongsTo belongsTo(string $related, string $foreignKey = null, string $ownerKey = null, string $relation = null)

Define an inverse one-to-one or many relationship.

from HasRelationships
MorphTo morphTo(string $name = null, string $type = null, string $id = null)

Define a polymorphic, inverse one-to-one or many relationship.

from HasRelationships
static string getActualClassNameForMorph(string $class)

Retrieve the actual class name for a given morph class.

from HasRelationships
HasMany hasMany(string $related, string $foreignKey = null, string $localKey = null)

Define a one-to-many relationship.

from HasRelationships
HasManyThrough hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null)

Define a has-many-through relationship.

from HasRelationships
MorphMany morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null)

Define a polymorphic one-to-many relationship.

from HasRelationships
BelongsToMany belongsToMany(string $related, string $table = null, string $foreignKey = null, string $relatedKey = null, string $relation = null)

Define a many-to-many relationship.

from HasRelationships
MorphToMany morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null, bool $inverse = false)

Define a polymorphic many-to-many relationship.

from HasRelationships
MorphToMany morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null)

Define a polymorphic, inverse many-to-many relationship.

from HasRelationships
string joiningTable(string $related)

Get the joining table name for a many-to-many relation.

from HasRelationships
bool touches(string $relation)

Determine if the model touches a given relation.

from HasRelationships
void touchOwners()

Touch the owning relations of the model.

from HasRelationships
string getMorphClass()

Get the class name for polymorphic relations.

from HasRelationships
array getRelations()

Get all the loaded relations for the instance.

from HasRelationships
mixed getRelation(string $relation)

Get a specified relationship.

from HasRelationships
bool relationLoaded(string $key)

Determine if the given relation is loaded.

from HasRelationships
$this setRelation(string $relation, mixed $value)

Set the specific relationship in the model.

from HasRelationships
$this setRelations(array $relations)

Set the entire relations array on the model.

from HasRelationships
array getTouchedRelations()

Get the relationships that are touched on save.

from HasRelationships
$this setTouchedRelations(array $touches)

Set the relationships that are touched on save.

from HasRelationships
bool touch()

Update the model's update timestamp.

from HasTimestamps
$this setCreatedAt(mixed $value)

Set the value of the "created at" attribute.

from HasTimestamps
$this setUpdatedAt(mixed $value)

Set the value of the "updated at" attribute.

from HasTimestamps
Carbon freshTimestamp()

Get a fresh timestamp for the model.

from HasTimestamps
string freshTimestampString()

Get a fresh timestamp for the model.

from HasTimestamps
bool usesTimestamps()

Determine if the model uses timestamps.

from HasTimestamps
string getCreatedAtColumn()

Get the name of the "created at" column.

from HasTimestamps
string getUpdatedAtColumn()

Get the name of the "updated at" column.

from HasTimestamps
array getHidden()

Get the hidden attributes for the model.

from HidesAttributes
$this setHidden(array $hidden)

Set the hidden attributes for the model.

from HidesAttributes
void addHidden(array|string|null $attributes = null)

Add hidden attributes for the model.

from HidesAttributes
array getVisible()

Get the visible attributes for the model.

from HidesAttributes
$this setVisible(array $visible)

Set the visible attributes for the model.

from HidesAttributes
void addVisible(array|string|null $attributes = null)

Add visible attributes for the model.

from HidesAttributes
$this makeVisible(array|string $attributes)

Make the given, typically hidden, attributes visible.

from HidesAttributes
$this makeHidden(array|string $attributes)

Make the given, typically visible, attributes hidden.

from HidesAttributes
array getFillable()

Get the fillable attributes for the model.

from GuardsAttributes
$this fillable(array $fillable)

Set the fillable attributes for the model.

from GuardsAttributes
array getGuarded()

Get the guarded attributes for the model.

from GuardsAttributes
$this guard(array $guarded)

Set the guarded attributes for the model.

from GuardsAttributes
static void unguard(bool $state = true)

Disable all mass assignable restrictions.

from GuardsAttributes
static void reguard()

Enable the mass assignment restrictions.

from GuardsAttributes
static bool isUnguarded()

Determine if current state is "unguarded".

from GuardsAttributes
static mixed unguarded(callable $callback)

Run the given callable while being unguarded.

from GuardsAttributes
bool isFillable(string $key)

Determine if the given attribute may be mass assigned.

from GuardsAttributes
bool isGuarded(string $key)

Determine if the given key is guarded.

from GuardsAttributes
bool totallyGuarded()

Determine if the model is totally guarded.

from GuardsAttributes
void __construct(array $attributes = array())

Create a new Eloquent model instance.

static void clearBootedModels()

Clear the list of booted models so they will be re-booted.

$this fill(array $attributes)

Fill the model with an array of attributes.

$this forceFill(array $attributes)

Fill the model with an array of attributes. Force mass assignment.

Model newInstance(array $attributes = array(), bool $exists = false)

Create a new instance of the given model.

Model newFromBuilder(array $attributes = array(), string|null $connection = null)

Create a new model instance that is existing.

static Builder on(string|null $connection = null)

Begin querying the model on a given connection.

static Builder onWriteConnection()

Begin querying the model on the write connection.

static Collection|Model[] all(array|mixed $columns = array('*'))

Get all of the models from the database.

static Builder|Model with(array|string $relations)

Begin querying a model with eager loading.

$this load(array|string $relations)

Eager load relations on the model.

bool update(array $attributes = array(), array $options = array())

Update the model in the database.

bool push()

Save the model and all of its relationships.

bool save(array $options = array())

Save the model to the database.

bool saveOrFail(array $options = array())

Save the model to the database using transaction.

static int destroy(array|int $ids)

Destroy the models for the given IDs.

bool|null delete()

Delete the model from the database.

bool|null forceDelete()

Force a hard delete on a soft deleted model.

static Builder query()

Begin querying the model.

Builder newQuery()

Get a new query builder for the model's table.

Builder|Model newQueryWithoutScopes()

Get a new query builder that doesn't have any global scopes.

Builder newQueryWithoutScope(Scope|string $scope)

Get a new query instance without a given scope.

Builder|Model newEloquentBuilder(Builder $query)

Create a new Eloquent query builder for the model.

Collection newCollection(array $models = array())

Create a new Eloquent Collection instance.

Pivot newPivot(Model $parent, array $attributes, string $table, bool $exists, string|null $using = null)

Create a new pivot model instance.

array toArray()

Convert the model instance to an array.

string toJson(int $options)

Convert the model instance to JSON.

array jsonSerialize()

Convert the object into something JSON serializable.

Model|null fresh(array|string $with = array())

Reload a fresh model instance from the database.

Model replicate(array $except = null)

Clone the model into a new, non-existing instance.

bool is(Model $model)

Determine if two models have the same ID and belong to the same table.

Connection getConnection()

Get the database connection for the model.

string getConnectionName()

Get the current connection name for the model.

$this setConnection(string $name)

Set the connection associated with the model.

static Connection resolveConnection(string|null $connection = null)

Resolve a connection instance.

static ConnectionResolverInterface getConnectionResolver()

Get the connection resolver instance.

static void setConnectionResolver(ConnectionResolverInterface $resolver)

Set the connection resolver instance.

static void unsetConnectionResolver()

Unset the connection resolver for models.

string getTable()

Get the table associated with the model.

$this setTable(string $table)

Set the table associated with the model.

string getKeyName()

Get the primary key for the model.

$this setKeyName(string $key)

Set the primary key for the model.

string getQualifiedKeyName()

Get the table qualified key name.

string getKeyType()

Get the auto incrementing key type.

bool getIncrementing()

Get the value indicating whether the IDs are incrementing.

$this setIncrementing(bool $value)

Set whether IDs are incrementing.

mixed getKey()

Get the value of the model's primary key.

mixed getQueueableId()

Get the queueable identity for the entity.

mixed getRouteKey()

Get the value of the model's route key.

string getRouteKeyName()

Get the route key for the model.

string getForeignKey()

Get the default foreign key name for the model.

int getPerPage()

Get the number of models to return per page.

$this setPerPage(int $perPage)

Set the number of models to return per page.

mixed __get(string $key)

Dynamically retrieve attributes on the model.

void __set(string $key, mixed $value)

Dynamically set attributes on the model.

bool offsetExists(mixed $offset)

Determine if the given attribute exists.

mixed offsetGet(mixed $offset)

Get the value for a given offset.

void offsetSet(mixed $offset, mixed $value)

Set the value for a given offset.

void offsetUnset(mixed $offset)

Unset the value for a given offset.

bool __isset(string $key)

Determine if an attribute or relation exists on the model.

void __unset(string $key)

Unset an attribute on the model.

mixed __call(string $method, array $parameters)

Handle dynamic method calls into the model.

static mixed __callStatic(string $method, array $parameters)

Handle dynamic static method calls into the method.

string __toString()

Convert the model to its string representation.

void __wakeup()

When a model is being unserialized, check if it needs to be booted.

Details

array attributesToArray()

Convert the model's attributes to an array.

Return Value

array

array relationsToArray()

Get the model's relationships in array form.

Return Value

array

mixed getAttribute(string $key)

Get an attribute from the model.

Parameters

string $key

Return Value

mixed

mixed getAttributeValue(string $key)

Get a plain attribute (not a relationship).

Parameters

string $key

Return Value

mixed

mixed getRelationValue(string $key)

Get a relationship.

Parameters

string $key

Return Value

mixed

bool hasGetMutator(string $key)

Determine if a get mutator exists for an attribute.

Parameters

string $key

Return Value

bool

$this setAttribute(string $key, mixed $value)

Set a given attribute on the model.

Parameters

string $key
mixed $value

Return Value

$this

bool hasSetMutator(string $key)

Determine if a set mutator exists for an attribute.

Parameters

string $key

Return Value

bool

$this fillJsonAttribute(string $key, mixed $value)

Set a given JSON attribute on the model.

Parameters

string $key
mixed $value

Return Value

$this

mixed fromJson(string $value, bool $asObject = false)

Decode the given JSON back into an array or object.

Parameters

string $value
bool $asObject

Return Value

mixed

string fromDateTime(DateTime|int $value)

Convert a DateTime to a storable string.

Parameters

DateTime|int $value

Return Value

string

array getDates()

Get the attributes that should be converted to dates.

Return Value

array

$this setDateFormat(string $format)

Set the date format used by the model.

Parameters

string $format

Return Value

$this

bool hasCast(string $key, array|string|null $types = null)

Determine whether an attribute should be cast to a native type.

Parameters

string $key
array|string|null $types

Return Value

bool

array getCasts()

Get the casts array.

Return Value

array

array getAttributes()

Get all of the current attributes on the model.

Return Value

array

$this setRawAttributes(array $attributes, bool $sync = false)

Set the array of model attributes. No checking is done.

Parameters

array $attributes
bool $sync

Return Value

$this

mixed|array getOriginal(string|null $key = null, mixed $default = null)

Get the model's original attribute values.

Parameters

string|null $key
mixed $default

Return Value

mixed|array

$this syncOriginal()

Sync the original attributes with the current.

Return Value

$this

$this syncOriginalAttribute(string $attribute)

Sync a single original attribute with its current value.

Parameters

string $attribute

Return Value

$this

bool isDirty(array|string|null $attributes = null)

Determine if the model or given attribute(s) have been modified.

Parameters

array|string|null $attributes

Return Value

bool

bool isClean(array|string|null $attributes = null)

Determine if the model or given attribute(s) have remained the same.

Parameters

array|string|null $attributes

Return Value

bool

array getDirty()

Get the attributes that have been changed since last sync.

Return Value

array

$this append(array|string $attributes)

Append attributes to query when building a query.

Parameters

array|string $attributes

Return Value

$this

$this setAppends(array $appends)

Set the accessors to append to model arrays.

Parameters

array $appends

Return Value

$this

array getMutatedAttributes()

Get the mutated attributes for a given instance.

Return Value

array

static void cacheMutatedAttributes(string $class)

Extract and cache all the mutated attributes of a class.

Parameters

string $class

Return Value

void

static void observe(object|string $class)

Register an observer with the Model.

Parameters

object|string $class

Return Value

void

array getObservableEvents()

Get the observable event names.

Return Value

array

$this setObservableEvents(array $observables)

Set the observable event names.

Parameters

array $observables

Return Value

$this

void addObservableEvents(array|mixed $observables)

Add an observable event name.

Parameters

array|mixed $observables

Return Value

void

void removeObservableEvents(array|mixed $observables)

Remove an observable event name.

Parameters

array|mixed $observables

Return Value

void

static void saving(Closure|string $callback)

Register a saving model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void saved(Closure|string $callback)

Register a saved model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void updating(Closure|string $callback)

Register an updating model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void updated(Closure|string $callback)

Register an updated model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void creating(Closure|string $callback)

Register a creating model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void created(Closure|string $callback)

Register a created model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void deleting(Closure|string $callback)

Register a deleting model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void deleted(Closure|string $callback)

Register a deleted model event with the dispatcher.

Parameters

Closure|string $callback

Return Value

void

static void flushEventListeners()

Remove all of the event listeners for the model.

Return Value

void

static Dispatcher getEventDispatcher()

Get the event dispatcher instance.

Return Value

Dispatcher

static void setEventDispatcher(Dispatcher $dispatcher)

Set the event dispatcher instance.

Parameters

Dispatcher $dispatcher

Return Value

void

static void unsetEventDispatcher()

Unset the event dispatcher for models.

Return Value

void

static mixed addGlobalScope(Scope|Closure|string $scope, Closure $implementation = null)

Register a new global scope on the model.

Parameters

Scope|Closure|string $scope
Closure $implementation

Return Value

mixed

Exceptions

InvalidArgumentException

static bool hasGlobalScope(Scope|string $scope)

Determine if a model has a global scope.

Parameters

Scope|string $scope

Return Value

bool

static Scope|Closure|null getGlobalScope(Scope|string $scope)

Get a global scope registered with the model.

Parameters

Scope|string $scope

Return Value

Scope|Closure|null

array getGlobalScopes()

Get the global scopes for this class instance.

Return Value

array

HasOne hasOne(string $related, string $foreignKey = null, string $localKey = null)

Define a one-to-one relationship.

Parameters

string $related
string $foreignKey
string $localKey

Return Value

HasOne

MorphOne morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null)

Define a polymorphic one-to-one relationship.

Parameters

string $related
string $name
string $type
string $id
string $localKey

Return Value

MorphOne

BelongsTo belongsTo(string $related, string $foreignKey = null, string $ownerKey = null, string $relation = null)

Define an inverse one-to-one or many relationship.

Parameters

string $related
string $foreignKey
string $ownerKey
string $relation

Return Value

BelongsTo

MorphTo morphTo(string $name = null, string $type = null, string $id = null)

Define a polymorphic, inverse one-to-one or many relationship.

Parameters

string $name
string $type
string $id

Return Value

MorphTo

static string getActualClassNameForMorph(string $class)

Retrieve the actual class name for a given morph class.

Parameters

string $class

Return Value

string

HasMany hasMany(string $related, string $foreignKey = null, string $localKey = null)

Define a one-to-many relationship.

Parameters

string $related
string $foreignKey
string $localKey

Return Value

HasMany

HasManyThrough hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null)

Define a has-many-through relationship.

Parameters

string $related
string $through
string|null $firstKey
string|null $secondKey
string|null $localKey

Return Value

HasManyThrough

MorphMany morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null)

Define a polymorphic one-to-many relationship.

Parameters

string $related
string $name
string $type
string $id
string $localKey

Return Value

MorphMany

BelongsToMany belongsToMany(string $related, string $table = null, string $foreignKey = null, string $relatedKey = null, string $relation = null)

Define a many-to-many relationship.

Parameters

string $related
string $table
string $foreignKey
string $relatedKey
string $relation

Return Value

BelongsToMany

MorphToMany morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null, bool $inverse = false)

Define a polymorphic many-to-many relationship.

Parameters

string $related
string $name
string $table
string $foreignKey
string $relatedKey
bool $inverse

Return Value

MorphToMany

MorphToMany morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null)

Define a polymorphic, inverse many-to-many relationship.

Parameters

string $related
string $name
string $table
string $foreignKey
string $relatedKey

Return Value

MorphToMany

string joiningTable(string $related)

Get the joining table name for a many-to-many relation.

Parameters

string $related

Return Value

string

bool touches(string $relation)

Determine if the model touches a given relation.

Parameters

string $relation

Return Value

bool

void touchOwners()

Touch the owning relations of the model.

Return Value

void

string getMorphClass()

Get the class name for polymorphic relations.

Return Value

string

array getRelations()

Get all the loaded relations for the instance.

Return Value

array

mixed getRelation(string $relation)

Get a specified relationship.

Parameters

string $relation

Return Value

mixed

bool relationLoaded(string $key)

Determine if the given relation is loaded.

Parameters

string $key

Return Value

bool

$this setRelation(string $relation, mixed $value)

Set the specific relationship in the model.

Parameters

string $relation
mixed $value

Return Value

$this

$this setRelations(array $relations)

Set the entire relations array on the model.

Parameters

array $relations

Return Value

$this

array getTouchedRelations()

Get the relationships that are touched on save.

Return Value

array

$this setTouchedRelations(array $touches)

Set the relationships that are touched on save.

Parameters

array $touches

Return Value

$this

bool touch()

Update the model's update timestamp.

Return Value

bool

$this setCreatedAt(mixed $value)

Set the value of the "created at" attribute.

Parameters

mixed $value

Return Value

$this

$this setUpdatedAt(mixed $value)

Set the value of the "updated at" attribute.

Parameters

mixed $value

Return Value

$this

Carbon freshTimestamp()

Get a fresh timestamp for the model.

Return Value

Carbon

string freshTimestampString()

Get a fresh timestamp for the model.

Return Value

string

bool usesTimestamps()

Determine if the model uses timestamps.

Return Value

bool

string getCreatedAtColumn()

Get the name of the "created at" column.

Return Value

string

string getUpdatedAtColumn()

Get the name of the "updated at" column.

Return Value

string

array getHidden()

Get the hidden attributes for the model.

Return Value

array

$this setHidden(array $hidden)

Set the hidden attributes for the model.

Parameters

array $hidden

Return Value

$this

void addHidden(array|string|null $attributes = null)

Add hidden attributes for the model.

Parameters

array|string|null $attributes

Return Value

void

array getVisible()

Get the visible attributes for the model.

Return Value

array

$this setVisible(array $visible)

Set the visible attributes for the model.

Parameters

array $visible

Return Value

$this

void addVisible(array|string|null $attributes = null)

Add visible attributes for the model.

Parameters

array|string|null $attributes

Return Value

void

$this makeVisible(array|string $attributes)

Make the given, typically hidden, attributes visible.

Parameters

array|string $attributes

Return Value

$this

$this makeHidden(array|string $attributes)

Make the given, typically visible, attributes hidden.

Parameters

array|string $attributes

Return Value

$this

array getFillable()

Get the fillable attributes for the model.

Return Value

array

$this fillable(array $fillable)

Set the fillable attributes for the model.

Parameters

array $fillable

Return Value

$this

array getGuarded()

Get the guarded attributes for the model.

Return Value

array

$this guard(array $guarded)

Set the guarded attributes for the model.

Parameters

array $guarded

Return Value

$this

static void unguard(bool $state = true)

Disable all mass assignable restrictions.

Parameters

bool $state

Return Value

void

static void reguard()

Enable the mass assignment restrictions.

Return Value

void

static bool isUnguarded()

Determine if current state is "unguarded".

Return Value

bool

static mixed unguarded(callable $callback)

Run the given callable while being unguarded.

Parameters

callable $callback

Return Value

mixed

bool isFillable(string $key)

Determine if the given attribute may be mass assigned.

Parameters

string $key

Return Value

bool

bool isGuarded(string $key)

Determine if the given key is guarded.

Parameters

string $key

Return Value

bool

bool totallyGuarded()

Determine if the model is totally guarded.

Return Value

bool

void __construct(array $attributes = array())

Create a new Eloquent model instance.

Parameters

array $attributes

Return Value

void

static void clearBootedModels()

Clear the list of booted models so they will be re-booted.

Return Value

void

$this fill(array $attributes)

Fill the model with an array of attributes.

Parameters

array $attributes

Return Value

$this

Exceptions

MassAssignmentException

$this forceFill(array $attributes)

Fill the model with an array of attributes. Force mass assignment.

Parameters

array $attributes

Return Value

$this

Model newInstance(array $attributes = array(), bool $exists = false)

Create a new instance of the given model.

Parameters

array $attributes
bool $exists

Return Value

Model

Model newFromBuilder(array $attributes = array(), string|null $connection = null)

Create a new model instance that is existing.

Parameters

array $attributes
string|null $connection

Return Value

Model

static Builder on(string|null $connection = null)

Begin querying the model on a given connection.

Parameters

string|null $connection

Return Value

Builder

static Builder onWriteConnection()

Begin querying the model on the write connection.

Return Value

Builder

static Collection|Model[] all(array|mixed $columns = array('*'))

Get all of the models from the database.

Parameters

array|mixed $columns

Return Value

Collection|Model[]

static Builder|Model with(array|string $relations)

Begin querying a model with eager loading.

Parameters

array|string $relations

Return Value

Builder|Model

$this load(array|string $relations)

Eager load relations on the model.

Parameters

array|string $relations

Return Value

$this

bool update(array $attributes = array(), array $options = array())

Update the model in the database.

Parameters

array $attributes
array $options

Return Value

bool

bool push()

Save the model and all of its relationships.

Return Value

bool

bool save(array $options = array())

Save the model to the database.

Parameters

array $options

Return Value

bool

bool saveOrFail(array $options = array())

Save the model to the database using transaction.

Parameters

array $options

Return Value

bool

Exceptions

Throwable

static int destroy(array|int $ids)

Destroy the models for the given IDs.

Parameters

array|int $ids

Return Value

int

bool|null delete()

Delete the model from the database.

Return Value

bool|null

Exceptions

Exception

bool|null forceDelete()

Force a hard delete on a soft deleted model.

This method protects developers from running forceDelete when trait is missing.

Return Value

bool|null

static Builder query()

Begin querying the model.

Return Value

Builder

Builder newQuery()

Get a new query builder for the model's table.

Return Value

Builder

Builder|Model newQueryWithoutScopes()

Get a new query builder that doesn't have any global scopes.

Return Value

Builder|Model

Builder newQueryWithoutScope(Scope|string $scope)

Get a new query instance without a given scope.

Parameters

Scope|string $scope

Return Value

Builder

Builder|Model newEloquentBuilder(Builder $query)

Create a new Eloquent query builder for the model.

Parameters

Builder $query

Return Value

Builder|Model

Collection newCollection(array $models = array())

Create a new Eloquent Collection instance.

Parameters

array $models

Return Value

Collection

Pivot newPivot(Model $parent, array $attributes, string $table, bool $exists, string|null $using = null)

Create a new pivot model instance.

Parameters

Model $parent
array $attributes
string $table
bool $exists
string|null $using

Return Value

Pivot

array toArray()

Convert the model instance to an array.

Return Value

array

string toJson(int $options)

Convert the model instance to JSON.

Parameters

int $options

Return Value

string

Exceptions

JsonEncodingException

array jsonSerialize()

Convert the object into something JSON serializable.

Return Value

array

Model|null fresh(array|string $with = array())

Reload a fresh model instance from the database.

Parameters

array|string $with

Return Value

Model|null

Model replicate(array $except = null)

Clone the model into a new, non-existing instance.

Parameters

array $except

Return Value

Model

bool is(Model $model)

Determine if two models have the same ID and belong to the same table.

Parameters

Model $model

Return Value

bool

Connection getConnection()

Get the database connection for the model.

Return Value

Connection

string getConnectionName()

Get the current connection name for the model.

Return Value

string

$this setConnection(string $name)

Set the connection associated with the model.

Parameters

string $name

Return Value

$this

static Connection resolveConnection(string|null $connection = null)

Resolve a connection instance.

Parameters

string|null $connection

Return Value

Connection

static ConnectionResolverInterface getConnectionResolver()

Get the connection resolver instance.

static void setConnectionResolver(ConnectionResolverInterface $resolver)

Set the connection resolver instance.

Parameters

ConnectionResolverInterface $resolver

Return Value

void

static void unsetConnectionResolver()

Unset the connection resolver for models.

Return Value

void

string getTable()

Get the table associated with the model.

Return Value

string

$this setTable(string $table)

Set the table associated with the model.

Parameters

string $table

Return Value

$this

string getKeyName()

Get the primary key for the model.

Return Value

string

$this setKeyName(string $key)

Set the primary key for the model.

Parameters

string $key

Return Value

$this

string getQualifiedKeyName()

Get the table qualified key name.

Return Value

string

string getKeyType()

Get the auto incrementing key type.

Return Value

string

bool getIncrementing()

Get the value indicating whether the IDs are incrementing.

Return Value

bool

$this setIncrementing(bool $value)

Set whether IDs are incrementing.

Parameters

bool $value

Return Value

$this

mixed getKey()

Get the value of the model's primary key.

Return Value

mixed

mixed getQueueableId()

Get the queueable identity for the entity.

Return Value

mixed

mixed getRouteKey()

Get the value of the model's route key.

Return Value

mixed

string getRouteKeyName()

Get the route key for the model.

Return Value

string

string getForeignKey()

Get the default foreign key name for the model.

Return Value

string

int getPerPage()

Get the number of models to return per page.

Return Value

int

$this setPerPage(int $perPage)

Set the number of models to return per page.

Parameters

int $perPage

Return Value

$this

mixed __get(string $key)

Dynamically retrieve attributes on the model.

Parameters

string $key

Return Value

mixed

void __set(string $key, mixed $value)

Dynamically set attributes on the model.

Parameters

string $key
mixed $value

Return Value

void

bool offsetExists(mixed $offset)

Determine if the given attribute exists.

Parameters

mixed $offset

Return Value

bool

mixed offsetGet(mixed $offset)

Get the value for a given offset.

Parameters

mixed $offset

Return Value

mixed

void offsetSet(mixed $offset, mixed $value)

Set the value for a given offset.

Parameters

mixed $offset
mixed $value

Return Value

void

void offsetUnset(mixed $offset)

Unset the value for a given offset.

Parameters

mixed $offset

Return Value

void

bool __isset(string $key)

Determine if an attribute or relation exists on the model.

Parameters

string $key

Return Value

bool

void __unset(string $key)

Unset an attribute on the model.

Parameters

string $key

Return Value

void

mixed __call(string $method, array $parameters)

Handle dynamic method calls into the model.

Parameters

string $method
array $parameters

Return Value

mixed

static mixed __callStatic(string $method, array $parameters)

Handle dynamic static method calls into the method.

Parameters

string $method
array $parameters

Return Value

mixed

string __toString()

Convert the model to its string representation.

Return Value

string

void __wakeup()

When a model is being unserialized, check if it needs to be booted.

Return Value

void

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.4/Illuminate/Database/Eloquent/Model.html