Download the PHP package digitalstars/simple-sql without Composer

On this page you can find all versions of the php package digitalstars/simple-sql. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package simple-sql

SimpleSQL

Подключение

В общих словах

Библиотека представляет собой удобный интерфейс для конструирования SQL запросов.

Быстрый старт

Ниже приведён пример подключения библиотеки и настройки, необходимой для начала работы. Все примеры будут приведены без этих строк инициализации.

Оглавление

Основные компоненты

Parser

Класс Parser - это постобработка запроса. Он заполняет типизированные заполнители значениями.

static function setPDO(\PDO $pdo)

Метод устанавливает объект PDO, который будет использоваться для подготовки параметров запроса.

Внимание! Метод setPDO должен быть вызван до начала использования библиотеки.

From

Компонент From является обязательным для всех запросов. Он представляет из себя конструктор таблицы в запросе, к которой идёт обращение.

static create(string|Select $sql = null, string $alias = null): self

Статический метод, инициализация объекта From.

Аргументы:

1) $sql - строка с именем таблицы в формате 'table_name' или сразу с алиасом 'table_name tn', или объект Select, который будет использован в качестве подзапроса. 2) $alias - алиас таблицы.

Если не указан алиас, то он будет сгенерирован автоматически.

getFrom(): string|Select

Возвращает имя таблицы или объект Select.

setFrom(string|Select $sql = null): self

Устанавливает имя таблицы или объект Select, который будет использован в качестве подзапроса.

getAlias(): string

Возвращает алиас таблицы.

setAlias(string $alias): self

Устанавливает алиас таблицы.

getSql(): string

Возвращает строку запроса, которая была сгенерирована и все заполнители заменены на значения.

getSqlRaw(): array

Метод используется для внутреннего взаимодействия внутри библиотеки. Но может быть полезен для отладки.

Возвращает массив:

1) 'sql' => string - строка запроса, которая была сгенерирована, но заполнители не были заменены на значения. 2) 'values' => array - массив значений для заполнителей.

Join

Компонент Join представляет из себя конструктор JOIN-а в запросе.

static create(string $type = null, From|string $from = null, Where|string $where_or_lexema = null, $where_value = null): self

Статический метод, инициализация объекта Join.

Аргументы:

1) $type - тип JOIN-а. Возможные значения: 'INNER', 'LEFT', 'RIGHT'. 2) $from - объект From или строка с именем таблицы в формате 'table_name' или сразу с алиасом 'table_name tn'. 3) $where_or_lexema - объект Where или строка с условием JOIN-а. 4) $where_value - значение для заполнителя в условии JOIN-а.

Также есть статические методы для инициализации объекта Join для каждого типа JOIN-а. в них нет параметра $type:

getLateral(): bool

Возвращает true, если JOIN является LATERAL.

setLateral(bool $is = true): self

Устанавливает JOIN как LATERAL.

setType(string $type): self

Устанавливает тип JOIN-а. Возможные значения: 'INNER', 'LEFT', 'RIGHT'.

getType(): string

Возвращает тип JOIN-а.

setFrom(string|Select|From $from = null, string $alias = null): self

Устанавливает таблицу для запроса.

Параметры:

getFrom(): From

Возвращает объект From, который был установлен в запросе.

setWhere(Where $where): self

Устанавливает объект Where для JOIN-а. По сути, это условие ON.

getWhere(): Where

Возвращает объект Where, который был установлен в запросе.

getSql(): string

Возвращает строку запроса, которая была сгенерирована и все заполнители заменены на значения.

getSqlRaw(): array

Метод используется для внутреннего взаимодействия внутри библиотеки. Но может быть полезен для отладки.

Возвращает массив:

1) 'sql' => string - строка запроса, которая была сгенерирована, но заполнители не были заменены на значения. 2) 'values' => array - массив значений для заполнителей.

Where

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

Внимание! Whare активно использует заполнители, и поддерживает все заполнители из digitalstars/DataBase. Подробнее о них можно прочитать в документации к библиотеке digitalstars/DataBase.

static create(Where|string $lexema = null, array|string|int $value = null): self

Статический метод, инициализация объекта Where.

Аргументы:

1) $lexema - строка с условием. Может быть как другим объектом Where, так и строкой, содержащей заполнители. 2) $value - значение для заполнителя в условии. Если нужно передать несколько значений, то передаётся массив. Если нужно передать массив в качестве 1 значения (например для IN), то он должен быть обёрнут в массив.

isEmpty(): bool

Возвращает true, если объект Where пустой.

w_and($lexema = null, $value = null): self

Добавляет к текущему объекту Where условие через AND.

w_or($lexema = null, $value = null): self

Добавляет к текущему объекту Where условие через OR.

clear(): self

Очищает текущий объект Where от условий.

getSqlRaw(): ?array

Метод используется для внутреннего взаимодействия внутри библиотеки. Но может быть полезен для отладки.

Возвращает массив:

1) 'sql' => string - строка запроса, которая была сгенерирована, но заполнители не были заменены на значения. 2) 'values' => array - массив значений для заполнителей.

SELECT запросы

Класс Select представляет из себя конструктор запросов SELECT.

static create(): self

Статический метод, инициализация объекта Select.

setSelect(array $sql)

Устанавливает список полей для выборки. Принимает как массив полей, так и ассоциативный массив, где ключи - это алиасы, а значения - это поля таблицы или функции.

addSelectList(array $sql)

То же самое, что и setSelect, но добавляет поля к уже существующим.

Примеры:

Передаём массив полей:

Передаём массив полей, часть из которых с алиасами, часть вычисляемые:

addSelect(string $field, string $alias = null): self

Добавляет поле в список выборки.

Примеры:

getSelect(): array

Возвращает список полей для выборки. В том же формате, что и передавался в setSelect.

setFrom(string|Select|From $from = null, string $alias = null): self

Устанавливает таблицу для запроса.

Параметры:

Примеры:

Пример 1:

Пример 2:

getFrom(): From

Возвращает объект From, который был установлен в запросе.

getJoinList(): array

Возвращает список объектов Join, которые были установлены в запросе.

addJoin(array|Join $join): self

Добавляет объект Join (или массив объектов), в список JOIN-ов.

setJoin(array|Join $join = null): self

Устанавливает объект Join (или массив объектов), в список JOIN-ов.

Примеры использования JOIN-ов:

Пример 1:

Пример 2 (с подзапросом):

getWhere(): Where

Возвращает объект Where, который был установлен в запросе.

setWhere(Where $where = null): self

Устанавливает объект Where в запросе.

Пример:

getGroupBy(): array

Возвращает список полей для группировки.

setGroupBy(array $group_by = null): self

Устанавливает список полей для группировки. Принимает массив алиасов или полей (как в setSelect).

Пример:

getHawing(): Where

Возвращает объект Where, который был установлен в запросе.

setHawing(Where $hawing = null): self

Устанавливает объект Where в запросе.

Пример:

getOrderBy(): array

Возвращает список полей для сортировки в том формате, в котором они были установлены (setOrderBy).

setOrderBy(array $order_by = null): self

Устанавливает список полей для сортировки. Ключ - это поле (как в методе setGroupBy), значение - это направление сортировки.

Пример:

addOrderBy(array $order_by): self

Добавляет полей для сортировки в конец уже заданных. При наличии повторяющихся ключей, они не будут перезаписаны.

getLimit(): ?int

Возвращает количество строк, которые будут выбраны. В случае, если не установлено, то возвращает null.

setLimit(?int $limit = null): self

Устанавливает количество строк, которые будут выбраны.

getShareMode(): ?string

Возвращает режим блокировки. В случае, если не установлено, то возвращает null.

setShareModeUpdate(): self

Устанавливает режим FOR UPDATE.

setShareModeShare(): self

Устанавливает режим FOR SHARE.

setShareModeDefault(): self

Устанавливает режим блокировки по умолчанию.

getSelectArray(): array

Собирает и возвращает массив, который содержит в себе все поля выборки в формате, который используется в запросе.

Ключ - это алиас поля, значение - это поле или выражение.

getSelectFeels(): array

Возвращает массив алиасов полей выборки.

getSql(): string

Возвращает строку запроса, которая была сгенерирована и все заполнители заменены на значения.

getSqlRaw(): array

Метод используется для внутреннего взаимодействия внутри библиотеки. Но может быть полезен для отладки.

Возвращает массив:

1) 'sql' => string - строка запроса, которая была сгенерирована, но заполнители не были заменены на значения. 2) 'values' => array - массив значений для заполнителей.

INSERT запросы

Класс Insert представляет из себя конструктор запросов INSERT.

static create(): self

Статический метод, инициализация объекта Insert.

setFields(array $sql = []): self

Устанавливает список полей для вставки. Принимает ассоциативный массив, где ключи - это поля, а значения - это заполнитель (или значение для вставки).

addField(string $field, string|int|float $placeholder_or_raw_value = null): self

Добавляет поле в список полей для вставки.

Параметры:

getFields(): array

Возвращает список полей для вставки. (в том же формате, в котором они были установлены методом setFields).

setValues(array|Select $values = []): self

Устанавливает список значений для вставки. Принимает массив значений или объект Select (если нужно вставить значения как из результата выполнения Select запроса).

Внимание! Каждый элемент массива - это массив значений всех полей, под каждый заполнитель

addValues(array $values = []): self

Добавляет значения для вставки.

getValues(): array|Select

Возвращает список значений для вставки (или объект Select). В том же формате, в котором они были установлены методом setValues.

setFrom(string|Select|From $from = null, string $alias = null): self

Устанавливает таблицу, в которую будет производиться вставка.

getFrom(): From

Возвращает объект From, который был установлен в запросе.

setIgnoreDuplicate(bool $is_ignore_duplicate = true): self

Устанавливает флаг IGNORE в INSERT.

getIgnoreDuplicate(): bool

Возвращает true, если установлен флаг IGNORE.

setFieldsUpdateOnDuplicate(array $fields = []): self

Устанавливает список полей, которые будут обновлены в случае, если запись уже существует.

addFieldsUpdateOnDuplicate(array|string $fields): self

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

getFieldsUpdateOnDuplicate(): array

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

getSql(): string

Возвращает строку запроса, которая была сгенерирована и все заполнители заменены на значения.

getSqlRaw(): array

Метод используется для внутреннего взаимодействия внутри библиотеки. Но может быть полезен для отладки.

Возвращает массив:

1) 'sql' => string - строка запроса, которая была сгенерирована, но заполнители не были заменены на значения. 2) 'values' => array - массив значений для заполнителей.

Примеры использования:

Пример 1:

Пример 2 (значения из Select запроса):

UPDATE запросы

Класс Update представляет из себя конструктор запросов UPDATE.

static create(): self

Статический метод, инициализация объекта Update.

setSet(array $sql = [], array $values = []): self

Устанавливает список полей и их значений для обновления.

Параметры:

addSet(string $field, string|int|float $placeholder_or_raw_value = null, $value = null): self

Добавляет поле и его значение для обновления.

Параметры:

getSet(): array

Возвращает список полей и их значений для обновления.

Возвращает ассоциативный массив, где ключи - это поля, а значения, следующий массив:

getSetSQLRaw(): array

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

Возвращает массив:

1) 'sql' => SQL запрос, который был сгенерирован, но заполнители не были заменены на значения. 2) 'values' => массив значений для заполнителей.

getFrom(): From

Возвращает объект From, который был установлен в запросе.

setFrom(string|Select|From $from = null, string $alias = null): self

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

getJoinList(): array

Возвращает список объектов Join, которые были установлены в запросе. (По аналоии с Select)

setJoin(array|Join $join = null): self

Устанавливает объект Join (или массив объектов), в список JOIN-ов. (По аналоии с Select)

addJoin(array|Join $join): self

Добавляет объект Join (или массив объектов), в список JOIN-ов. (По аналоии с Select)

getWhere(): Where

Возвращает объект Where, который был установлен в запросе. Отвечает за условие WHERE.

setWhere(Where $where = null): self

Устанавливает объект Where в запросе. Отвечает за условие WHERE.

getLimit(): ?int

Возвращает количество строк, которые будут обновлены. В случае, если не установлено, то возвращает null.

setLimit(?int $limit = null): self

Устанавливает количество строк, которые будут обновлены.

getSql(): string

Возвращает строку запроса, которая была сгенерирована и все заполнители заменены на значения.

getSqlRaw(): array

Метод используется для внутреннего взаимодействия внутри библиотеки. Но может быть полезен для отладки.

Возвращает массив:

1) 'sql' => string - строка запроса, которая была сгенерирована, но заполнители не были заменены на значения. 2) 'values' => array - массив значений для заполнителей.

Примеры использования:

Пример 1:

Пример 2:

DELETE запросы

Класс Delete представляет из себя конструктор запросов DELETE.

static create(): self

Статический метод, инициализация объекта Delete.

setFrom(string|Select|From $from = null, string $alias = null): self

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

getFrom(): From

Возвращает объект From, который был установлен в запросе.

getWhere(): Where

Возвращает объект Where, который был установлен в запросе. Отвечает за условие WHERE.

setWhere(Where $where = null): self

Устанавливает объект Where в запросе. Отвечает за условие WHERE.

getLimit(): ?int

Возвращает количество строк, которые будут удалены. В случае, если не установлено, то возвращает null.

setLimit(?int $limit = null): self

Устанавливает количество строк, которые будут удалены. Если не установлено, то удаляются все строки.

getSql(): string

Возвращает строку запроса, которая была сгенерирована и все заполнители заменены на значения.

getSqlRaw(): array

Метод используется для внутреннего взаимодействия внутри библиотеки. Но может быть полезен для отладки.

Возвращает массив:

1) 'sql' => string - строка запроса, которая была сгенерирована, но заполнители не были заменены на значения. 2) 'values' => array - массив значений для заполнителей.

Примеры использования:

Пример 1:


All versions of simple-sql with dependencies

PHP Build Version
Package Version
Requires php Version >=8.0
ext-json Version *
ext-mbstring Version *
ext-pdo Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package digitalstars/simple-sql contains the following files

Loading the files please wait ....