Spec-Zone.ru › Laravel 5.3

Builder

class Builder (View source)

Свойства

protected Builder $query Базовый экземпляр билдера запросов.
protected Model $model Запрашиваемая модель.
protected array $eagerLoad Связи, которые должны быть загружены с помощью eager loading.
protected array $macros Все зарегистрированные макросы билдера.
protected Closure $onDelete Замена для стандартной функции удаления.
protected array $passthru Методы, которые должны быть возвращены из билдера запросов.
protected array $scopes Применённые глобальные скоупы.
protected array $removedScopes Удаленные глобальные скоупы.

Методы

void __construct(Builder $query)

Создать новый экземпляр Eloquent query builder.

$this withGlobalScope(string $identifier, Scope|Closure $scope)

Зарегистрировать новый глобальный scope.

$this withoutGlobalScope(Scope|string $scope)

Удалить зарегистрированный глобальный scope.

$this withoutGlobalScopes(array $scopes = null)

Удалить все или указанные зарегистрированные глобальные scopes.

array removedScopes()

Получить массив глобальных scopes, удаленных из запроса.

Model|Collection|Builder[]|Builder|null find(mixed $id, array $columns = ['*'])

Найти модель по первичному ключу.

Collection findMany(array $ids, array $columns = ['*'])

Найти несколько моделей по их первичным ключам.

Model|Collection findOrFail(mixed $id, array $columns = ['*'])

Найти модель по первичному ключу или выбросить исключение.

Model findOrNew(mixed $id, array $columns = ['*'])

Найти модель по первичному ключу или вернуть новый экземпляр модели.

Model firstOrNew(array $attributes)

Получить первую запись, соответствующую атрибутам, или создать её.

Model firstOrCreate(array $attributes, array $values = [])

Получить первую запись, соответствующую атрибутам, или создать её.

Model updateOrCreate(array $attributes, array $values = [])

Создать или обновить запись, соответствующую атрибутам, и заполнить её значениями.

Model|Builder|null first(array $columns = ['*'])

Выполнить запрос и получить первый результат.

Model|Builder firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат или выбросить исключение.

Collection|Builder[] get(array $columns = ['*'])

Выполнить запрос как операцию "select".

mixed value(string $column)

Получить значение одного столбца из первого результата запроса.

Generator cursor()

Получить генератор для заданного запроса.

bool chunk(int $count, callable $callback)

Разбить результаты запроса на куски.

bool chunkById(int $count, callable $callback, string $column = 'id')

Разбить результаты запроса на куски по сравниванию числовых ID.

bool each(callable $callback, int $count = 1000)

Выполнить обратный вызов над каждым элементом, разбивая на куски.

Collection pluck(string $column, string|null $key = null)

Получить массив со значениями заданного столбца.

LengthAwarePaginator paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить запрос на страницы.

Paginator simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить запрос на простые страницы.

int update(array $values)

Обновить запись в базе данных.

int increment(string $column, int $amount = 1, array $extra = [])

Увеличить значение столбца на заданное количество.

int decrement(string $column, int $amount = 1, array $extra = [])

Уменьшить значение столбца на заданное количество.

array addUpdatedAtColumn(array $values)

Добавить столбец "updated at" в массив значений.

mixed delete()

Удалить запись из базы данных.

mixed forceDelete()

Выполнить стандартную функцию удаления для билдера.

void onDelete(Closure $callback)

Зарегистрировать замену для стандартной функции удаления.

Model[] getModels(array $columns = ['*'])

Получить загруженные модели без eager loading.

array eagerLoadRelations(array $models)

Загрузить отношения для моделей с eager loading.

array loadRelation(array $models, string $name, Closure $constraints)

Загрузить отношение для набора моделей с eager loading.

Relation getRelation(string $name)

Получить экземпляр отношения для данного имени отношения.

array nestedRelations(string $relation)

Получить глубоко вложенные отношения для заданного отношения верхнего уровня.

bool isNested(string $name, string $relation)

Определить, является ли отношение вложенным.

$this when(bool $value, Closure $callback, Closure $default = null)

Применить изменения запроса от обратного вызова, если заданное "значение" истинно.

$this where(string|Closure $column, string $operator = null, mixed $value = null, string $boolean = 'and')

Добавить условие where в запрос.

Builder|Builder orWhere(string|Closure $column, string $operator = null, mixed $value = null)

Добавить условие «или где» к запросу.

Builder|Builder has(string $relation, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure $callback = null)

Добавить условие подсчёта/существования связи к запросу.

Builder|Builder hasNested(string $relations, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure|null $callback = null)

Добавить условия подсчёта/существования вложенных связей к запросу.

Builder|Builder doesntHave(string $relation, string $boolean = 'and', Closure $callback = null)

Добавить условие подсчёта/существования связи к запросу.

Builder|Builder whereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)

Добавить условие подсчёта/существования связи к запросу с условиями «где».

Builder|Builder whereDoesntHave(string $relation, Closure $callback = null)

Добавить условие подсчёта/существования связи к запросу с условиями «где».

Builder|Builder orHas(string $relation, string $operator = '>=', int $count = 1)

Добавить условие подсчёта/существования связи к запросу с оператором «или».

Builder|Builder orWhereHas(string $relation, Closure $callback, string $operator = '>=', int $count = 1)

Добавить условие подсчёта/существования связи к запросу с условиями «где» и оператором «или».

Builder|Builder addHasWhere(Builder $hasQuery, Relation $relation, string $operator, int $count, string $boolean)

Добавить условие «has» в запрос с помощью условия «где».

bool shouldRunExistsQuery(string $operator, int $count)

Проверить, можно ли выполнить запрос «существует» для оптимизации производительности.

$this whereCountQuery(Builder $query, string $operator = '>=', int $count = 1, string $boolean = 'and')

Добавить условие подсчёта подзапроса к запросу.

Builder|Builder mergeModelDefinedRelationConstraints(Builder $relation)

Объединить ограничения из запроса связи с текущим запросом.

Relation getHasRelationQuery(string $relation)

Получить экземпляр базового запроса «has relation».

$this with(mixed $relations)

Указать связи, которые должны быть загружены жадно.

$this without(mixed $relations)

Запретить указанные связи от жадной загрузки.

$this withCount(mixed $relations)

Добавить подзапросы для подсчёта связей.

array parseWithRelations(array $relations)

Разбить список связей на отдельные.

array parseNestedWith(string $name, array $results)

Обработать вложенные связи в связи.

mixed scopes(array $scopes)

Добавить заданные области видимости к текущему экземпляру билдера.

mixed callScope(callable $scope, array $parameters = [])

Применить заданную область видимости к текущему экземпляру билдера.

Builder|Builder applyScopes()

Применить области видимости к экземпляру Eloquent билдера и вернуть его.

bool shouldNestWheresForScope(Builder $query, int $originalWhereCount)

Определить, должна ли область видимости, добавленная после указанного смещения, быть вложена.

void nestWheresForScope(Builder $query, int $originalWhereCount)

Вложить условия «где» путём их разделения по количеству условий «где».

void addNestedWhereSlice(Builder $query, array $wheres, int $offset, int $length = null)

Разделить условия «где» по указанному смещению и добавить их в запрос как вложенное условие.

array nestWhereSlice(array $whereSlice, string $boolean = 'and')

Создать массив «где» с вложенными условиями «где».

Builder getQuery()

Получить лежащий в основе экземпляр билдера запросов.

Builder toBase()

Получить экземпляр билдера базового запроса.

$this setQuery(Builder $query)

Установить лежащий в основе экземпляр билдера запросов.

array getEagerLoads()

Получить связи, которые загружаются жадно.

$this setEagerLoads(array $eagerLoad)

Указать связи, которые загружаются жадно.

Model getModel()

Получить экземпляр модели, к которой осуществляется запрос.

$this setModel(Model $model)

Установить экземпляр модели для модели, к которой осуществляется запрос.

void macro(string $name, Closure $callback)

Расширить билдер заданным обратным вызовом.

Closure getMacro(string $name)

Получить заданный макрос по имени.

mixed __call(string $method, array $parameters)

Динамически обработать вызовы к экземпляру запроса.

void __clone()

Вызвать клонирование базового билдера при клонировании.

Подробности

void __construct(Builder $query)

Создать новый экземпляр билдера запросов Eloquent.

Параметры

Builder $query

Возвращаемое значение

void

$this withGlobalScope(string $identifier, Scope|Closure $scope)

Зарегистрировать новый глобальный scope.

Параметры

string $identifier
Scope|Closure $scope

Возвращаемое значение

$this

$this withoutGlobalScope(Scope|string $scope)

Удалить зарегистрированный глобальный scope.

Параметры

Scope|string $scope

Возвращаемое значение

$this

$this withoutGlobalScopes(array $scopes = null)

Удалить все или переданные зарегистрированные глобальные scopes.

Параметры

array $scopes

Возвращаемое значение

$this

array removedScopes()

Получить массив глобальных scopes, которые были удалены из запроса.

Возвращаемое значение

array

Model|Collection|Builder[]|Builder|null find(mixed $id, array $columns = ['*'])

Найти модель по её первичному ключу.

Параметры

mixed $id
array $columns

Возвращаемое значение

Model|Collection|Builder[]|Builder|null

Collection findMany(array $ids, array $columns = ['*'])

Найти несколько моделей по их первичным ключам.

Параметры

array $ids
array $columns

Возвращаемое значение

Collection

Model|Collection findOrFail(mixed $id, array $columns = ['*'])

Найти модель по её первичному ключу или выбросить исключение.

Параметры

mixed $id
array $columns

Возвращаемое значение

Model|Collection

Исключения

ModelNotFoundException

Model findOrNew(mixed $id, array $columns = ['*'])

Найти модель по её первичному ключу или вернуть новый экземпляр модели.

Параметры

mixed $id
array $columns

Возвращаемое значение

Model

Model firstOrNew(array $attributes)

Получить первую запись, соответствующую атрибутам, или создать её.

Параметры

array $attributes

Возвращаемое значение

Model

Model firstOrCreate(array $attributes, array $values = [])

Получить первую запись, соответствующую атрибутам, или создать её.

Параметры

array $attributes
array $values

Возвращаемое значение

Model

Model updateOrCreate(array $attributes, array $values = [])

Создать или обновить запись, соответствующую атрибутам, и заполнить её значениями.

Параметры

array $attributes
array $values

Возвращаемое значение

Model

Model|Builder|null first(array $columns = ['*'])

Выполнить запрос и получить первый результат.

Параметры

array $columns

Возвращаемое значение

Model|Builder|null

Model|Builder firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат или выбросить исключение.

Параметры

array $columns

Возвращаемое значение

Model|Builder

Исключения

ModelNotFoundException
END_OF_DOCUMENT_MARKER

Коллекция|Билдер[] get(array $columns = ['*'])

Выполнить запрос в качестве оператора «выбрать».

Параметры

array $columns

Возвращаемое значение

Коллекция|Билдер[]

mixed value(string $column)

Получить значение одного столбца из первого результата запроса.

Параметры

string $column

Возвращаемое значение

mixed

Генератор cursor()

Получить генератор для заданного запроса.

Возвращаемое значение

Генератор

bool chunk(int $count, callable $callback)

Разбить результаты запроса на куски.

Параметры

int $count
callable $callback

Возвращаемое значение

bool

bool chunkById(int $count, callable $callback, string $column = 'id')

Разбить результаты запроса на куски, сравнивая числовые идентификаторы.

Параметры

int $count
callable $callback
string $column

Возвращаемое значение

bool

bool each(callable $callback, int $count = 1000)

Выполнить обратный вызов над каждым элементом с разбиением на куски.

Параметры

callable $callback
int $count

Возвращаемое значение

bool

Коллекция pluck(string $column, string|null $key = null)

Получить массив со значениями заданного столбца.

Параметры

string $column
string|null $key

Возвращаемое значение

Коллекция

LengthAwarePaginator paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить запрос на страницы.

Параметры

int $perPage
array $columns
string $pageName
int|null $page

Возвращаемое значение

LengthAwarePaginator

Исключения

InvalidArgumentException

Пагинатор simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить запрос на страницы с простым пагинатором.

Параметры

int $perPage
array $columns
string $pageName
int|null $page

Возвращаемое значение

Пагинатор

int update(array $values)

Обновить запись в базе данных.

Параметры

array $values

Возвращаемое значение

int

int increment(string $column, int $amount = 1, array $extra = [])

Увеличить значение столбца на заданную величину.

Параметры

string $column
int $amount
array $extra

Возвращаемое значение

int

int decrement(string $column, int $amount = 1, array $extra = [])

Уменьшить значение столбца на заданную величину.

Параметры

string $column
int $amount
array $extra

Возвращаемое значение

int

protected array addUpdatedAtColumn(array $values)

Добавить столбец «обновлено» в массив значений.

Параметры

array $values

Возвращаемое значение

array

mixed delete()

Удалить запись из базы данных.

Возвращаемое значение

mixed

mixed forceDelete()

Запустить стандартную функцию удаления для билдера.

Возвращаемое значение

mixed

void onDelete(Закрытие $callback)

Зарегистрировать замену для стандартной функции удаления.

Параметры

Закрытие $callback

Возвращаемое значение

void

Модель[] getModels(array $columns = ['*'])

Получить гидратированные модели без ленивой загрузки.

Параметры

array $columns

Возвращаемое значение

Модель[]

array eagerLoadRelations(array $models)

Загрузить отношения с ленивой загрузкой для моделей.

Параметры

array $models

Возвращаемое значение

array

protected array loadRelation(array $models, string $name, Закрытие $constraints)

Загрузить отношение для набора моделей.

Параметры

array $models
string $name
Закрытие $constraints

Возвращаемое значение

array

Relation getRelation(string $name)

Получить экземпляр отношения для заданного имени отношения.

Parameters

string $name

Return Value

Relation

protected array nestedRelations(string $relation)

Получить глубоко вложенные отношения для заданного отношения верхнего уровня.

Parameters

string $relation

Return Value

array

protected bool isNested(string $name, string $relation)

Определить, является ли отношение вложенным.

Parameters

string $name
string $relation

Return Value

bool

$this when(bool $value, Closure $callback, Closure $default = null)

Применить изменения запроса обратного вызова, если заданное "значение" истинно.

Parameters

bool $value
Closure $callback
Closure $default

Return Value

$this

$this where(string|Closure $column, string $operator = null, mixed $value = null, string $boolean = 'and')

Добавить базовое условие where в запрос.

Parameters

string|Closure $column
string $operator
mixed $value
string $boolean

Return Value

$this

Builder|Builder orWhere(string|Closure $column, string $operator = null, mixed $value = null)

Добавить условие "or where" в запрос.

Parameters

string|Closure $column
string $operator
mixed $value

Return Value

Builder|Builder

Builder|Builder has(string $relation, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure $callback = null)

Добавить условие подсчёта/существования отношения к запросу.

Parameters

string $relation
string $operator
int $count
string $boolean
Closure $callback

Return Value

Builder|Builder

protected Builder|Builder hasNested(string $relations, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure|null $callback = null)

Добавить вложенные условия подсчёта/существования отношения к запросу.

Parameters

string $relations
string $operator
int $count
string $boolean
Closure|null $callback

Return Value

Builder|Builder

Builder|Builder doesntHave(string $relation, string $boolean = 'and', Closure $callback = null)

Добавить условие подсчёта/существования отношения к запросу.

Parameters

string $relation
string $boolean
Closure $callback

Return Value

Builder|Builder

Builder|Builder whereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)

Добавить условие подсчёта/существования отношения к запросу с условиями where.

Parameters

string $relation
Closure $callback
string $operator
int $count

Return Value

Builder|Builder

Builder|Builder whereDoesntHave(string $relation, Closure $callback = null)

Добавить условие подсчёта/существования отношения к запросу с условиями where.

Parameters

string $relation
Closure $callback

Return Value

Builder|Builder

Builder|Builder orHas(string $relation, string $operator = '>=', int $count = 1)

Добавить условие подсчёта/существования отношения к запросу с "или".

Parameters

string $relation
string $operator
int $count

Return Value

Builder|Builder

Builder|Builder orWhereHas(string $relation, Closure $callback, string $operator = '>=', int $count = 1)

Добавить условие подсчёта/существования отношения к запросу с оператором «или».

Параметры

string $relation
Closure $callback
string $operator
int $count

Возвращаемое значение

Builder|Builder

protected Builder|Builder addHasWhere(Builder $hasQuery, Relation $relation, string $operator, int $count, string $boolean)

Добавить условие «has» в запрос.

Параметры

Builder $hasQuery
Relation $relation
string $operator
int $count
string $boolean

Возвращаемое значение

Builder|Builder

protected bool shouldRunExistsQuery(string $operator, int $count)

Проверить возможность выполнения запроса «exists» для оптимизации производительности.

Параметры

string $operator
int $count

Возвращаемое значение

bool

protected $this whereCountQuery(Builder $query, string $operator = '>=', int $count = 1, string $boolean = 'and')

Добавить условие подсчёта с помощью подзапроса к запросу.

Параметры

Builder $query
string $operator
int $count
string $boolean

Возвращаемое значение

$this

Builder|Builder mergeModelDefinedRelationConstraints(Builder $relation)

Объединить ограничения из запроса отношения в текущий запрос.

Параметры

Builder $relation

Возвращаемое значение

Builder|Builder

protected Relation getHasRelationQuery(string $relation)

Получить экземпляр базового запроса «has relation».

Параметры

string $relation

Возвращаемое значение

Relation

$this with(mixed $relations)

Указать отношения, которые должны быть загружены с помощью жадной загрузки.

Параметры

mixed $relations

Возвращаемое значение

$this

$this without(mixed $relations)

Запретить жадную загрузку указанных отношений.

Параметры

mixed $relations

Возвращаемое значение

$this

$this withCount(mixed $relations)

Добавить подзапросы для подсчёта отношений.

Параметры

mixed $relations

Возвращаемое значение

$this

protected array parseWithRelations(array $relations)

Разбор списка отношений на отдельные.

Параметры

array $relations

Возвращаемое значение

array

protected array parseNestedWith(string $name, array $results)

Разбор вложенных отношений в отношении.

Параметры

string $name
array $results

Возвращаемое значение

array

mixed scopes(array $scopes)

Добавить указанные области видимости к текущему экземпляру билдера.

Параметры

array $scopes

Возвращаемое значение

mixed

protected mixed callScope(callable $scope, array $parameters = [])

Применить данную область видимости к текущему экземпляру билдера.

Параметры

callable $scope
array $parameters

Возвращаемое значение

mixed

Builder|Builder applyScopes()

Применить области видимости к экземпляру билдера Eloquent и вернуть его.

Возвращаемое значение

Builder|Builder

protected bool shouldNestWheresForScope(Builder $query, int $originalWhereCount)

Определить, нужно ли вкладывать условия, добавленные областью видимости после указанного смещения.

Параметры

Builder $query
int $originalWhereCount

Возвращаемое значение

bool

protected void nestWheresForScope(Builder $query, int $originalWhereCount)

Вложить условия where, разделив их по количеству условий where.

Параметры

Builder $query
int $originalWhereCount

Возвращаемое значение

void
END_OF_DOCUMENT_MARKER

protected void addNestedWhereSlice(Builder $query, array $wheres, int $offset, int $length = null)

Разбить условия where по заданному смещению и добавить их в запрос как вложенное условие.

Параметры

Builder $query
массив $wheres
int $offset
int $length

Возвращаемое значение

void

protected array nestWhereSlice(array $whereSlice, string $boolean = 'and')

Создать массив where с вложенными условиями where.

Параметры

массив $whereSlice
строка $boolean

Возвращаемое значение

массив

Builder getQuery()

Получить базовый экземпляр билдера запросов.

Возвращаемое значение

Builder

Builder toBase()

Получить базовый экземпляр билдера запросов.

Возвращаемое значение

Builder

$this setQuery(Builder $query)

Установить базовый экземпляр билдера запросов.

Параметры

Builder $query

Возвращаемое значение

$this

array getEagerLoads()

Получить загружаемые отношения.

Возвращаемое значение

массив

$this setEagerLoads(array $eagerLoad)

Установить загружаемые отношения.

Параметры

массив $eagerLoad

Возвращаемое значение

$this

Model getModel()

Получить экземпляр модели, к которой обращается запрос.

Возвращаемое значение

Model

$this setModel(Model $model)

Установить экземпляр модели для запроса.

Параметры

Model $model

Возвращаемое значение

$this

void macro(string $name, Closure $callback)

Расширить билдер с помощью заданного обратного вызова.

Параметры

строка $name
Closure $callback

Возвращаемое значение

void

Closure getMacro(string $name)

Получить макрос по заданному имени.

Параметры

строка $name

Возвращаемое значение

Closure

mixed __call(string $method, array $parameters)

Динамически обрабатывать вызовы в экземпляр запроса.

Параметры

строка $method
массив $parameters

Возвращаемое значение

mixed

void __clone()

Принудительно клонировать базовый билдер запроса при клонировании.

Возвращаемое значение

void

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API