Грамматика
класс Грамматика расширяет Грамматика (Просмотреть исходный код)
Трейты
| ОбрабатываетJsonПути | |
| Макрообъект |
Свойства
| статический защищённый массив | $macros | Зарегистрированные строковые макросы. | из Макрообъект |
| защищённый строковый тип | $tablePrefix | Префикс таблицы грамматики. | из Грамматика |
| защищённый массив | $operators | Операторы, специфичные для грамматики. | |
| защищённый массив | $bitwiseOperators | Битовые операторы, специфичные для грамматики. | |
| защищённый массив строк | $selectComponents | Компоненты, составляющие предложение select. |
Методы
| static void | macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макрос. | из Macroable |
| static void | mixin(object $mixin, bool $replace = true)
Смешать другой объект в класс. | из Macroable |
| static bool | hasMacro(string $name)
Проверяет, зарегистрировано ли макрос. | из Macroable |
| static void | flushMacros()
Очистить существующие макросы. | из Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Динамически обрабатывать вызовы к классу. | из Macroable |
| mixed | __call(string $method, array $parameters)
Динамически обрабатывать вызовы к классу. | из Macroable |
| array | wrapArray(array $values)
Оборачивает массив значений. | из Grammar |
| string | wrapTable(Expression|string $table)
Оборачивает таблицу в идентификаторы ключевых слов. | из Grammar |
| string | wrap(Expression|string $value, bool $prefixAlias = false)
Оборачивает значение в идентификаторы ключевых слов. | из Grammar |
| string | wrapAliasedValue(string $value, bool $prefixAlias = false)
Оборачивает значение, имеющее псевдоним. | из Grammar |
| string | wrapSegments(array $segments)
Оборачивает указанные сегменты значений. | из Grammar |
| string | wrapValue(string $value)
Оборачивает одиночную строку в идентификаторы ключевых слов. | из Grammar |
| string | wrapJsonSelector(string $value)
Оборачивает указанный JSON-селектор. | из Grammar |
| bool | isJsonSelector(string $value)
Определяет, является ли заданная строка JSON-селектором. | из Grammar |
| string | columnize(array $columns)
Преобразует массив имён столбцов в строку, разделив их. | из Grammar |
| string | parameterize(array $values)
Создаёт заглушки для параметров запроса для массива. | из Grammar |
| string | parameter(mixed $value)
Получить соответствующую заглушку для параметра запроса для значения. | из Grammar |
| string | quoteString(string|array $value)
Указывает заданную строковую литерал. | из Grammar |
| bool | isExpression(mixed $value)
Определяет, является ли заданное значение выражением. | из Grammar |
| mixed | getValue(Expression $expression)
Получить значение выражения. | из Grammar |
| string | getDateFormat()
Получить формат дат, хранимых в базе данных. | из Grammar |
| string | getTablePrefix()
Получить префикс таблицы грамматики. | из Grammar |
| $this | setTablePrefix(string $prefix)
Установить префикс таблицы грамматики. | из Grammar |
| array | wrapJsonFieldAndPath(string $column)
Разделить заданный JSON-селектор на поле и необязательный путь и обернуть их по отдельности. | из CompilesJsonPaths |
| string | wrapJsonPath(string $value, string $delimiter = '->')
Оборачивает заданный JSON-путь. | из CompilesJsonPaths |
| string | wrapJsonPathSegment(string $segment)
Оборачивает заданный сегмент JSON-пути. | из CompilesJsonPaths |
| string | compileSelect(Builder $query)
Компилирует запрос select в SQL. | |
| array | compileComponents(Builder $query)
Компилирует компоненты, необходимые для предложения select. | |
| string | compileAggregate(Builder $query, array $aggregate)
Компилирует предложение aggregated 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)
Компилировать условие whereRaw. | |
| string | whereBasic(Builder $query, array $where)
Компилировать базовое условие where. | |
| string | whereBitwise(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 | 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 | whereBetweenColumns(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 not 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 | whereJsonContainsKey(Builder $query, array $where)
Компилировать условие "where JSON содержит ключ". | |
| string | compileJsonContainsKey(string $column)
Компилировать выражение "JSON содержит ключ" в SQL. | |
| string | whereJsonLength(Builder $query, array $where)
Компилировать условие "where JSON длина". | |
| string | compileJsonLength(string $column, string $operator, string $value)
Компилировать выражение "JSON длина" в SQL. | |
| string | compileJsonValueCast(string $value)
Компилировать выражение "JSON значение cast" в SQL. | |
| string | whereFullText(Builder $query, array $where)
Компилировать условие "where fulltext". | |
| string | compileGroups(Builder $query, array $groups)
Компилировать части "group by" запроса. | |
| string | compileHavings(Builder $query)
Компилировать части "having" запроса. | |
| string | compileHaving(array $having)
Компилировать отдельное условие having. | |
| string | compileBasicHaving(array $having)
Компилировать базовое условие having. | |
| string | compileHavingBetween(array $having)
Компилировать условие "between" для having. |
| string | compileHavingNull(array $having)
Скомпилировать условие having null. | |
| string | compileHavingNotNull(array $having)
Скомпилировать условие having not null. | |
| string | compileHavingBit(array $having)
Скомпилировать условие having с использованием битового оператора. | |
| string | compileNestedHavings(array $having)
Скомпилировать вложенное условие having. | |
| string | compileOrders(Builder $query, array $orders)
Скомпилировать части запроса "order by". | |
| array | compileOrdersToArray(Builder $query, array $orders)
Скомпилировать порядок сортировки запроса в массив. | |
| string | compileRandom(string|int $seed)
Скомпилировать оператор случайной выборки в SQL. | |
| string | compileLimit(Builder $query, int $limit)
Скомпилировать части запроса "limit". | |
| string | compileOffset(Builder $query, int $offset)
Скомпилировать части запроса "offset". | |
| string | compileUnions(Builder $query)
Скомпилировать запросы "union", присоединённые к основному запросу. | |
| string | compileUnion(array $union)
Скомпилировать одно оператор union. | |
| string | wrapUnion(string $sql)
Оборачивает подзапрос union в скобки. | |
| 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. | |
| string | compileUpdateColumns(Builder $query, array $values)
Скомпилировать столбцы для оператора update. | |
| string | compileUpdateWithoutJoins(Builder $query, string $table, string $columns, string $where)
Скомпилировать оператор update без объединений в SQL. | |
| string | compileUpdateWithJoins(Builder $query, string $table, string $columns, string $where)
Скомпилировать оператор update с объединениями в SQL. | |
| string | compileUpsert(Builder $query, array $values, array $uniqueBy, array $update)
Скомпилировать оператор "upsert" в SQL. | |
| array | prepareBindingsForUpdate(array $bindings, array $values)
Подготовить параметры для оператора update. | |
| string | compileDelete(Builder $query)
Скомпилировать оператор delete в SQL. | |
| string | compileDeleteWithoutJoins(Builder $query, string $table, string $where)
Скомпилировать оператор delete без объединений в SQL. | |
| string | compileDeleteWithJoins(Builder $query, string $table, string $where)
Скомпилировать оператор delete с объединениями в SQL. | |
| array | prepareBindingsForDelete(array $bindings)
Подготовить параметры для оператора delete. | |
| array | compileTruncate(Builder $query)
Скомпилировать оператор truncate table в SQL. | |
| string | compileLock(Builder $query, bool|string $value)
Скомпилировать оператор lock в SQL. | |
| bool | supportsSavepoints()
Определить, поддерживает ли синтаксический анализатор savepoint. | |
| string | compileSavepoint(string $name)
Скомпилировать оператор SQL для определения savepoint. | |
| string | compileSavepointRollBack(string $name)
Скомпилировать оператор SQL для отката savepoint. | |
| string | wrapJsonBooleanSelector(string $value)
Оборачивает заданный JSON селектор для булевых значений. | |
| string | wrapJsonBooleanValue(string $value)
Оборачивает заданное JSON булевое значение. | |
| string | concatenate(array $segments)
Конкатенировать массив сегментов, удаляя пустые. | |
| string | removeLeadingBoolean(string $value)
Удалить ведущий булевый оператор из оператора. | |
| array | getOperators()
Получить грамматические операторы. | |
| array | getBitwiseOperators()
Получить грамматические битовые операторы. |
Details
static void macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макрос.
static void mixin(object $mixin, bool $replace = true)
Смешать другой объект в класс.
static bool hasMacro(string $name)
Проверяет, зарегистрирован ли макрос.
static void flushMacros()
Очистить существующие макросы.
static mixed __callStatic(string $method, array $parameters)
Динамически обрабатывает вызовы к классу.
mixed __call(string $method, array $parameters)
Динамически обрабатывает вызовы к классу.
array wrapArray(array $values)
Оборачивает массив значений.
string wrapTable(Expression|string $table)
Оборачивает таблицу в идентификаторы ключевых слов.
string wrap(Expression|string $value, bool $prefixAlias = false)
Оборачивает значение в идентификаторы ключевых слов.
protected string wrapAliasedValue(string $value, bool $prefixAlias = false)
Оборачивает значение, имеющее псевдоним.
protected string wrapSegments(array $segments)
Оборачивает заданные сегменты значений.
protected string wrapValue(string $value)
Оборачивает единственную строку в идентификаторы ключевых слов.
protected string wrapJsonSelector(string $value)
Оборачивает заданный JSON-селектор.
protected bool isJsonSelector(string $value)
Определить, является ли заданная строка JSON-селектором.
string columnize(array $columns)
Преобразовать массив имён столбцов в строку с разделителями.
string parameterize(array $values)
Создать параметры запроса-заполнители для массива.
string parameter(mixed $value)
Получить соответствующий параметр запроса-заполнитель для значения.
string quoteString(string|array $value)
Процитировать заданную строковую литерал.
bool isExpression(mixed $value)
Определить, является ли заданное значение выражением.
mixed getValue(Expression $expression)
Получить значение выражения.
string getDateFormat()
Получить формат для дат, хранящихся в базе данных.
string getTablePrefix()
Получить префикс таблицы грамматики.
$this setTablePrefix(string $prefix)
Установить префикс таблицы грамматики.
protected array wrapJsonFieldAndPath(string $column)
Разделить заданный JSON-селектор на поле и необязательный путь и обернуть их по отдельности.
protected string wrapJsonPath(string $value, string $delimiter = '->')
Обернуть заданный JSON-путь.
protected string wrapJsonPathSegment(string $segment)
Обернуть заданный сегмент JSON-пути.
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".
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 whereBitwise(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 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 whereBetweenColumns(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 whereJsonContainsKey(Builder $query, array $where)
Компилировать условие "where JSON содержит ключ".
protected string compileJsonContainsKey(string $column)
Компилировать оператор "JSON содержит ключ" в SQL.
protected string whereJsonLength(Builder $query, array $where)
Компилировать условие "where JSON длина".
protected string compileJsonLength(string $column, string $operator, string $value)
Компилировать оператор "JSON длина" в SQL.
string compileJsonValueCast(string $value)
Компилировать оператор "JSON преобразование значения" в SQL.
string whereFullText(Builder $query, array $where)
Компилировать условие "where fulltext".
protected string compileGroups(Builder $query, array $groups)
Компилировать группировки запроса.
protected string compileHavings(Builder $query)
Компилировать условия "having".
protected string compileHaving(array $having)
Компилировать одно условие "having".
protected string compileBasicHaving(array $having)
Компилировать базовое условие "having".
protected string compileHavingBetween(array $having)
Компилировать условие "between" в "having".
protected string compileHavingNull(array $having)
Компилировать условие "having null".
protected string compileHavingNotNull(array $having)
Скомпилировать условие having не равно null.
protected string compileHavingBit(array $having)
Скомпилировать условие having, включающее битовый оператор.
protected string compileNestedHavings(array $having)
Скомпилировать вложенное условие having.
protected string compileOrders(Builder $query, array $orders)
Скомпилировать части запроса "order by".
protected array compileOrdersToArray(Builder $query, array $orders)
Скомпилировать порядок сортировки запроса в массив.
string compileRandom(string|int $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 wrapUnion(string $sql)
Оборачивает подзапрос 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.
protected string compileUpdateColumns(Builder $query, array $values)
Компилировать столбцы для оператора обновления.
protected string compileUpdateWithoutJoins(Builder $query, string $table, string $columns, string $where)
Компилировать оператор обновления без объединений в SQL.
protected string compileUpdateWithJoins(Builder $query, string $table, string $columns, string $where)
Компилировать оператор обновления с объединениями в SQL.
string compileUpsert(Builder $query, array $values, array $uniqueBy, array $update)
Компилировать оператор «upsert» в SQL.
array prepareBindingsForUpdate(array $bindings, array $values)
Подготовить параметры для оператора обновления.
string compileDelete(Builder $query)
Компилировать оператор удаления в SQL.
protected string compileDeleteWithoutJoins(Builder $query, string $table, string $where)
Компилировать оператор удаления без объединений в SQL.
protected string compileDeleteWithJoins(Builder $query, string $table, string $where)
Компилировать оператор удаления с объединениями в SQL.
array prepareBindingsForDelete(array $bindings)
Подготовить параметры для оператора удаления.
массив compileTruncate(Builder $query)
Компилирует оператор truncate таблицы в SQL.
protected строка compileLock(Builder $query, bool|string $value)
Компилирует блокировку в SQL.
логическое supportsSavepoints()
Определяет, поддерживает ли синтаксический анализатор сохранения точек.
строка compileSavepoint(string $name)
Компилирует оператор SQL для определения точки сохранения.
строка compileSavepointRollBack(string $name)
Компилирует оператор SQL для отката точки сохранения.
protected строка wrapJsonBooleanSelector(string $value)
Оборачивает заданный JSON-селектор для булевых значений.
protected строка wrapJsonBooleanValue(string $value)
Оборачивает заданное JSON-булевое значение.
protected строка concatenate(array $segments)
Конкатенирует массив сегментов, удаляя пустые.
protected строка removeLeadingBoolean(string $value)
Удаляет ведущую булевую часть из оператора.
array getOperators()
Получить грамматически специфические операторы.
array getBitwiseOperators()
Получить грамматически специфические побитовые операторы.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/9.x/Illuminate/Database/Query/Grammars/Grammar.html