Грамматика
класс Грамматика расширяет Грамматика (Просмотреть исходный код)
Трейты
| Macroable |
Свойства
| статический защищённый массив | $macros | Зарегистрированные строковые макросы. | из Macroable |
| защищённая строка | $tablePrefix | Префикс таблицы грамматики. | из Grammar |
| защищённый массив | $operators | Операторы, специфичные для грамматики. | |
| защищённый массив | $selectComponents | Компоненты, составляющие предложение select. |
Методы
| static void | macro(string $name, object|callable $macro) Зарегистрировать пользовательское макро. | from Macroable |
| static void | mixin(object $mixin, bool $replace = true) Смешать другой объект в класс. | from Macroable |
| static bool | hasMacro(string $name) Проверяет, зарегистрировано ли макро. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters) Динамически обрабатывать вызовы класса. | from Macroable |
| mixed | __call(string $method, array $parameters) Динамически обрабатывать вызовы класса. | from Macroable |
| array | wrapArray(array $values) Обернуть массив значений. | from Grammar |
| string | wrapTable(Expression|string $table) Обернуть таблицу в идентификаторы ключевых слов. | from Grammar |
| string | wrap(Expression|string $value, bool $prefixAlias = false) Обернуть значение в идентификаторы ключевых слов. | |
| string | wrapAliasedValue(string $value, bool $prefixAlias = false) Обернуть значение, имеющее псевдоним. | from Grammar |
| string | wrapSegments(array $segments) Обернуть заданные сегменты значений. | from Grammar |
| string | wrapValue(string $value) Обернуть отдельную строку в идентификаторы ключевых слов. | from Grammar |
| string | columnize(array $columns) Преобразовать массив имен столбцов в строку с разделителями. | from Grammar |
| string | parameterize(array $values) Создать маркеры параметров запроса для массива. | from Grammar |
| string | parameter(mixed $value) Получить соответствующий маркер параметра запроса для значения. | from Grammar |
| string | quoteString(string|array $value) Привести заданную строковую литерал. | from Grammar |
| bool | isExpression(mixed $value) Определить, является ли заданное значение выражением. | from Grammar |
| string | getValue(Expression $expression) Получить значение выражения. | from Grammar |
| string | getDateFormat() Получить формат для даты, хранящейся в базе данных. | from Grammar |
| string | getTablePrefix() Получить префикс таблицы грамматики. | from Grammar |
| $this | setTablePrefix(string $prefix) Установить префикс таблицы грамматики. | from Grammar |
| string | compileSelect(Builder $query) Компилировать запрос select в SQL. | |
| array | compileComponents(Builder $query) Скомпилировать компоненты, необходимые для предложения select. | |
| string | compileAggregate(Builder $query, array $aggregate) Скомпилировать предложение агрегированного select. | |
| string|null | compileColumns(Builder $query, array $columns) Скомпилировать часть запроса "select *". | |
| string | compileFrom(Builder $query, string $table) Скомпилировать часть запроса "from". | |
| string | compileJoins(Builder $query, array $joins) Скомпилировать части запроса "join". | |
| string | compileWheres(Builder $query) Скомпилировать части запроса "where". | |
| array | compileWheresToArray(Builder $query) Получить массив всех предложений where для запроса. | |
| string | concatenateWhereClauses(Builder $query, array $sql) Отформатировать операторы предложения where в одну строку. | |
| string | whereRaw(Builder $query, array $where) Скомпилировать исходное предложение where. | |
| string | whereBasic(Builder $query, array $where) Скомпилировать основное предложение where. | |
| string | whereIn(Builder $query, array $where) Скомпилировать предложение "where in". | |
| string | whereNotIn(Builder $query, array $where) Скомпилировать предложение "where not in". | |
| string | whereNotInRaw(Builder $query, array $where) Скомпилировать предложение "where not in raw". | |
| string | whereInSub(Builder $query, array $where) Скомпилировать предложение where in подзапроса. |
| string | whereNotInSub(Builder $query, array $where) Скомпилировать условие where not in подзапроса. | |
| string | whereInRaw(Builder $query, array $where) Скомпилировать условие "where in raw". | |
| string | whereNull(Builder $query, array $where) Скомпилировать условие "where null". | |
| string | whereNotNull(Builder $query, array $where) Скомпилировать условие "where not null". | |
| string | whereBetween(Builder $query, array $where) Скомпилировать условие "between". | |
| string | whereDate(Builder $query, array $where) Скомпилировать условие "where date". | |
| string | whereTime(Builder $query, array $where) Скомпилировать условие "where time". | |
| string | whereDay(Builder $query, array $where) Скомпилировать условие "where day". | |
| string | whereMonth(Builder $query, array $where) Скомпилировать условие "where month". | |
| string | whereYear(Builder $query, array $where) Скомпилировать условие "where year". | |
| string | dateBasedWhere(string $type, Builder $query, array $where) Скомпилировать условие where, основанное на дате. | |
| string | whereColumn(Builder $query, array $where) Скомпилировать условие where, сравнивающее две колонки. | |
| string | whereNested(Builder $query, array $where) Скомпилировать вложенное условие where. | |
| string | whereSub(Builder $query, array $where) Скомпилировать условие where с подзапросом. | |
| string | whereExists(Builder $query, array $where) Скомпилировать условие where exists. | |
| string | whereNotExists(Builder $query, array $where) Скомпилировать условие where exists. | |
| string | whereRowValues(Builder $query, array $where) Скомпилировать условие where с значениями строки. | |
| string | whereJsonBoolean(Builder $query, array $where) Скомпилировать условие "where JSON boolean". | |
| string | whereJsonContains(Builder $query, array $where) Скомпилировать условие "where JSON содержит". | |
| string | compileJsonContains(string $column, string $value) Скомпилировать выражение "JSON содержит" в SQL. | |
| string | prepareBindingForJsonContains(mixed $binding) Подготовить привязку для выражения "JSON содержит". | |
| string | whereJsonLength(Builder $query, array $where) Скомпилировать условие "where JSON длина". | |
| string | compileJsonLength(string $column, string $operator, string $value) Скомпилировать выражение "JSON длина" в SQL. | |
| string | compileGroups(Builder $query, array $groups) Скомпилировать части "group by" запроса. | |
| string | compileHavings(Builder $query, array $havings) Скомпилировать части "having" запроса. | |
| string | compileHaving(array $having) Скомпилировать одно условие having. | |
| string | compileBasicHaving(array $having) Скомпилировать простое условие having. | |
| string | compileHavingBetween(array $having) Скомпилировать условие "between" having. | |
| string | compileOrders(Builder $query, array $orders) Скомпилировать части "order by" запроса. | |
| array | compileOrdersToArray(Builder $query, array $orders) Скомпилировать порядки запроса в массив. | |
| string | compileRandom(string $seed) Скомпилировать выражение random в SQL. | |
| string | compileLimit(Builder $query, int $limit) Скомпилировать части "limit" запроса. | |
| string | compileOffset(Builder $query, int $offset) Скомпилировать части "offset" запроса. | |
| string | compileUnions(Builder $query) Скомпилировать объединенные запросы, присоединенные к основному запросу. | |
| string | compileUnion(array $union) Скомпилировать одно объединенное выражение. | |
| string | compileUnionAggregate(Builder $query) Скомпилировать агрегированный объединенный запрос в SQL. | |
| string | compileExists(Builder $query) Скомпилировать выражение exists в SQL. | |
| string | compileInsert(Builder $query, array $values) Скомпилировать выражение insert в SQL. | |
| string | compileInsertOrIgnore(Builder $query, array $values) Скомпилировать выражение insert ignore в SQL. |
| строка | compileInsertGetId(Builder $query, array $values, string $sequence) Скомпилировать оператор вставки и получения идентификатора в SQL. | |
| строка | compileInsertUsing(Builder $query, array $columns, string $sql) Скомпилировать оператор вставки, используя подзапрос, в SQL. | |
| строка | compileUpdate(Builder $query, array $values) Скомпилировать оператор обновления в SQL. | |
| массив | prepareBindingsForUpdate(array $bindings, array $values) Подготовить привязки для оператора обновления. | |
| строка | compileDelete(Builder $query) Скомпилировать оператор удаления в SQL. | |
| массив | prepareBindingsForDelete(array $bindings) Подготовить привязки для оператора удаления. | |
| массив | compileTruncate(Builder $query) Скомпилировать оператор обнуления таблицы в SQL. | |
| строка | compileLock(Builder $query, bool|string $value) Скомпилировать блокировку в SQL. | |
| логическое значение | supportsSavepoints() Определить, поддерживает ли грамматика сохранение точек. | |
| строка | compileSavepoint(string $name) Скомпилировать оператор SQL для определения точки сохранения. | |
| строка | compileSavepointRollBack(string $name) Скомпилировать оператор SQL для выполнения отката точки сохранения. | |
| строка | wrapJsonSelector(string $value) Оборачивание заданного JSON селектора. | |
| строка | wrapJsonBooleanSelector(string $value) Оборачивание заданного JSON селектора для логических значений. | |
| строка | wrapJsonBooleanValue(string $value) Оборачивание заданного JSON логического значения. | |
| массив | wrapJsonFieldAndPath(string $column) Разделение заданного JSON селектора на поле и необязательный путь и их отдельное обрамление. | |
| строка | wrapJsonPath(string $value, string $delimiter = '->') Оборачивание заданного JSON пути. | |
| логическое значение | isJsonSelector(string $value) Определение, является ли заданная строка JSON селектором. | |
| строка | concatenate(array $segments) Конкатенация массива сегментов с удалением пустых. | |
| строка | removeLeadingBoolean(string $value) Удаление ведущего логического значения из оператора. | |
| массив | getOperators() Получение операторов, специфичных для грамматики. |
Подробности
static void macro(string $name, object|callable $macro)
Регистрация пользовательского макроса.
static void mixin(object $mixin, bool $replace = true)
Смешивание другого объекта в класс.
static bool hasMacro(string $name)
Проверка, зарегистрирован ли макрос.
static смешанный тип __callStatic(string $method, array $parameters)
Динамическая обработка вызовов класса.
смешанный тип __call(string $method, array $parameters)
Динамическая обработка вызовов класса.
массив wrapArray(array $values)
Оборачивание массива значений.
строка wrapTable(Expression|string $table)
Оборачивание таблицы в ключевые идентификаторы.
строка wrap(Expression|string $value, bool $prefixAlias = false)
Оборачивание значения в ключевые идентификаторы.
protected строка wrapAliasedValue(string $value, bool $prefixAlias = false)
Оборачивание значения, имеющего псевдоним.
protected строка wrapSegments(array $segments)
Оборачивание заданных сегментов значения.
protected string wrapValue(string $value)
Оборачивание одной строки в идентификаторы ключевых слов.
string columnize(array $columns)
Преобразование массива имён столбцов в строку, разделенную разделителями.
string parameterize(array $values)
Создание заполнительных параметров запроса для массива.
string parameter(mixed $value)
Получение подходящего заполнителя параметра запроса для значения.
string quoteString(string|array $value)
Приведение данной строковой литералы к кавычкам.
bool isExpression(mixed $value)
Определение, является ли данное значение исходным выражением.
string getValue(Expression $expression)
Получение значения исходного выражения.
string getDateFormat()
Получение формата для дат, хранящихся в базе данных.
string getTablePrefix()
Получение префикса таблицы грамматики.
$this setTablePrefix(string $prefix)
Установка префикса таблицы грамматики.
string compileSelect(Builder $query)
Компиляция запроса select в SQL.
protected array compileComponents(Builder $query)
Компиляция компонентов, необходимых для фрагмента select.
protected string compileAggregate(Builder $query, array $aggregate)
Компиляция фрагмента агрегированного select.
protected string|null compileColumns(Builder $query, array $columns)
Компиляция фрагмента "select *" запроса.
protected string compileFrom(Builder $query, string $table)
Компиляция фрагмента "from" запроса.
protected string compileJoins(Builder $query, array $joins)
Компиляция фрагментов "join" запроса.
protected string compileWheres(Builder $query)
Компиляция фрагментов "where" запроса.
protected array compileWheresToArray(Builder $query)
Получение массива всех фрагментов "where" для запроса.
protected string concatenateWhereClauses(Builder $query, array $sql)
Форматирование операторов фрагмента where в одну строку.
protected string whereRaw(Builder $query, array $where)
Компиляция исходного фрагмента where.
protected string whereBasic(Builder $query, array $where)
Компиляция простого условия where.
protected string whereIn(Builder $query, array $where)
Компиляция условия "where in".
protected string whereNotIn(Builder $query, array $where)
Компиляция условия "where not in".
protected string whereNotInRaw(Builder $query, array $where)
Компиляция условия "where not in raw".
Для безопасности, whereIntegerInRaw гарантирует, что этот метод используется только с целочисленными значениями.
protected string whereInSub(Builder $query, array $where)
Компиляция условия where в подзапросе.
protected string whereNotInSub(Builder $query, array $where)
Компиляция условия where not in в подзапросе.
protected string whereInRaw(Builder $query, array $where)
Компиляция условия "where in raw".
Для безопасности, whereIntegerInRaw гарантирует, что этот метод используется только с целочисленными значениями.
protected string whereNull(Builder $query, array $where)
Компиляция условия "where null".
protected string whereNotNull(Builder $query, array $where)
Компиляция условия "where not null".
protected string whereBetween(Builder $query, array $where)
Компиляция условия "between".
protected string whereDate(Builder $query, array $where)
Компиляция условия "where date".
protected string whereTime(Builder $query, array $where)
Компиляция условия "where time".
protected string whereDay(Builder $query, array $where)
Компиляция условия "where day".
protected string whereMonth(Builder $query, array $where)
Компиляция условия "where month".
protected string whereYear(Builder $query, array $where)
Компиляция условия "where year".
protected string dateBasedWhere(string $type, Builder $query, array $where)
Компиляция условия where, основанного на дате.
protected string whereColumn(Builder $query, array $where)
Компилировать условие where, сравнивая два столбца.
.
protected string whereNested(Builder $query, array $where)
Компилировать вложенное условие where.
protected string whereSub(Builder $query, array $where)
Компилировать условие where с подзапросом.
protected string whereExists(Builder $query, array $where)
Компилировать условие where exists.
protected string whereNotExists(Builder $query, array $where)
Компилировать условие where exists.
protected string whereRowValues(Builder $query, array $where)
Компилировать условие where row values.
protected string whereJsonBoolean(Builder $query, array $where)
Компилировать условие "where JSON boolean".
protected string whereJsonContains(Builder $query, array $where)
Компилировать условие "where JSON содержит".
protected string compileJsonContains(string $column, string $value)
Компилировать оператор "JSON содержит" в SQL.
string prepareBindingForJsonContains(mixed $binding)
Подготовить привязку для оператора "JSON содержит".
protected string whereJsonLength(Builder $query, array $where)
Компилировать условие "where JSON длина".
protected string compileJsonLength(string $column, string $operator, string $value)
Компилировать оператор "JSON длина" в SQL.
protected string compileGroups(Builder $query, array $groups)
Компилировать части "group by" запроса.
protected string compileHavings(Builder $query, array $havings)
Компилировать части "having" запроса.
protected string compileHaving(array $having)
Компилировать одно условие having.
protected string compileBasicHaving(array $having)
Компилировать базовое условие having.
protected string compileHavingBetween(array $having)
Компилировать условие "between" для having.
protected string compileOrders(Builder $query, array $orders)
Компилировать части запроса "order by".
protected array compileOrdersToArray(Builder $query, array $orders)
Компилировать заказы запроса в массив.
string compileRandom(string $seed)
Компилировать оператор случайных чисел в SQL.
protected string compileLimit(Builder $query, int $limit)
Компилировать части запроса "limit".
protected string compileOffset(Builder $query, int $offset)
Компилировать части запроса "offset".
protected string compileUnions(Builder $query)
Компилировать "union" запросы, присоединенные к основному запросу.
protected string compileUnion(array $union)
Компилировать одно объединение.
protected string compileUnionAggregate(Builder $query)
Компилировать агрегированный запрос union в SQL.
string compileExists(Builder $query)
Компилировать оператор exists в SQL.
string compileInsert(Builder $query, array $values)
Компилировать оператор insert в SQL.
string compileInsertOrIgnore(Builder $query, array $values)
Компилировать оператор insert ignore в SQL.
string compileInsertGetId(Builder $query, array $values, string $sequence)
Компилировать оператор insert и получение ID в SQL.
string compileInsertUsing(Builder $query, array $columns, string $sql)
Компилировать оператор insert с использованием подзапроса в SQL.
string compileUpdate(Builder $query, array $values)
Компилировать оператор update в SQL.
array prepareBindingsForUpdate(array $bindings, array $values)
Подготовить параметры для оператора update.
string compileDelete(Builder $query)
Компилировать оператор delete в SQL.
array prepareBindingsForDelete(array $bindings)
Подготовить параметры для оператора delete.
массив compileTruncate(Builder $query)
Скомпилировать оператор обнуления таблицы в SQL.
protected строка compileLock(Builder $query, bool|string $value)
Скомпилировать блокировку в SQL.
булево supportsSavepoints()
Определить, поддерживает ли синтаксический анализатор сохранение точек.
строка compileSavepoint(string $name)
Скомпилировать оператор SQL для определения точки сохранения.
строка compileSavepointRollBack(string $name)
Скомпилировать оператор SQL для отката точки сохранения.
protected строка wrapJsonSelector(string $value)
Обернуть заданный JSON-селектор.
protected строка wrapJsonBooleanSelector(string $value)
Обернуть заданный JSON-селектор для логических значений.
protected строка wrapJsonBooleanValue(string $value)
Обернуть заданное логическое значение JSON.
protected массив wrapJsonFieldAndPath(string $column)
Разделить заданный JSON-селектор на поле и необязательный путь и обернуть их по отдельности.
protected строка wrapJsonPath(string $value, string $delimiter = '->')
Обернуть заданный JSON-путь.
protected булево isJsonSelector(string $value)
Определить, является ли заданная строка JSON-селектором.
protected строка concatenate(array $segments)
Конкатенировать массив сегментов, удаляя пустые.
protected строка removeLeadingBoolean(string $value)
Удалить ведущую логическую операцию из оператора.
массив getOperators()
Получить грамматические операторы.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.8/Illuminate/Database/Query/Grammars/Grammar.html