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