Download the PHP package andrey-tech/database-php without Composer
On this page you can find all versions of the php package andrey-tech/database-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download andrey-tech/database-php
More information about andrey-tech/database-php
Files in andrey-tech/database-php
Package database-php
Short Description Простая расширяемая библиотека классов на PHP7+ и PDO для работы с СУБД (MySQL, SQLite и др.) с кэшированием подготовленных запросов
License MIT
Homepage https://github.com/andrey-tech/database-php
Informations about the package database-php
Database PHP
Простая расширяемая библиотека классов на PHP7+ и PDO для работы с СУБД (MySQL, SQLite и др.) с кэшированием подготовленных запросов.
Содержание
- Требования
- Установка
- Класс
Database
- Класс
MySQLDatabase
- Примеры
- Класс
SQLiteDatabase
- Примеры
- Класс
- Автор
- Лицензия
Требования
- PHP >= 7.0.
- Произвольный автозагрузчик классов, реализующий стандарт PSR-4.
Установка
Установка через composer:
или добавить
в секцию require файла composer.json.
Класс Database
Класс \App\Database\Database
является абстрактным базовым классом для работы с СУБД.
При возникновении ошибок в классах пространства имен \App\Database
выбрасывается исключение с объектом класса \App\Database\DatabaseException
.
Класс \App\Database\Database
содержит следующие общие публичные методы:
static instance(array $config = [], array $options = []) :Database
Возвращает единственный объект класса.$config
- конфигурация соединения с СУБД;$options
- опции подключения для драйвера СУБД.
connect() :void
Выполняет подключение к серверу СУБД. В обычных условиях не требуется, так как подключение к серверу СУБД выполняется автоматически при первом запросе.disconnect() :void
Выполняет отключение от сервера СУБД. В обычных условиях не требуется, так как отключение от сервера СУБД выполняется автоматически при уничтожении объекта класса.- doStatement($statement, array $values = [], bool $isNamed = true, array $prepareOptions = []): \PDOStatement
Подготавливает запрос, кэширует подготовленный запрос и запускает подготовленный запрос на выполнение.
Возвращает объект класса \PDOStatement.$statement
- SQL оператор;$values
- массив значений для SQL оператора;$isNamed
- флаг именованных параметров (:name) в SQL операторе;$prepareOptions
- опции драйвера СУБД для подготовки запроса.
beginTransaction()
Инициализирует транзакцию.commitTransaction()
Фиксирует транзакцию.rollbackTransaction()
Откатывает транзакцию.fetchAll(\PDOStatement $stmt): \Generator
Позволяет выбирать все записи с помощью генератора.$stmt
- объект класса \PDOStatement.
getLastInsertId(string $idName = null) :string
Возвращает значение "id" последней вставленной записи.$idName
- имя столбца "id".
createInStatement(array $in = []): string
Возвращает строку для выражения IN (?, ?, ?,...).$in
- массив значений внутри выражения IN(?, ?, ?,...).
getPdo() :\PDO
Возвращает объект класса \PDO.
Дополнительные параметры доступны через публичные свойства объекта класса:
Свойство | По умолчанию | Описание |
---|---|---|
$debug |
false | Включает отладочный режим с выводом в STDOUT всех выполняемых операций |
Класс MySQLDatabase
Класс \App\Database\MySQLDatabase
расширяет класс \App\Database\Database
и предназначен для работы с СУБД MySQL.
По умолчанию установлены следующие параметры конфигурации и опции подключения:
Примеры
Пример работы непосредственно с классом MySQLDatabase
:
Пример вывода отладочной информации в STDOUT:
Пример с созданием дочернего класса:
Класс SQLiteDatabase
Класс \App\Database\SQliteDatabase
расширяет класс \App\Database\Database
и предназначен для работы с СУБД SQLite.
По умолчанию установлены следующие параметры конфигурации и опции подключения:
Примеры
Пример работы непосредственно с классом SQLiteDatabase
:
Автор
© 2019-2020 andrey-tech
Лицензия
Данная библиотека распространяется на условиях лицензии MIT.
All versions of database-php with dependencies
ext-pdo Version *