1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/springphp123-SpringMySQLi

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 6.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 17:52 4144e4f

SpringMySQLi

Библиотека: введение

Это библиотека классов, которая предоставляет удобные операции для работы с базой данных MySQL, используя расширение MySQLi.

Методы библиотеки

  1. Публичные параметры:
    • $pageNo — номер текущей страницы при выполнении запроса с разбиением на страницы;
    • $pageRows — количество записей в строке при выполнении запроса с разбиением на страницы;
    • $runCount — количество выполнений SQL-запроса;
    • $runTime — время выполнения SQL-запроса (в секундах);
    • $errNo — код ошибки;
    • $errMsg — описание ошибки.
  2. Публичные методы:
    • __construct($host, $user, $pwd, $dbname, $charset = 'utf8mb4') — инициализация библиотеки (передаются необходимые параметры для подключения к базе данных);
    • __destruct() — выполнение кода при автоматическом уничтожении библиотеки;
    • destory() — ручное уничтожение библиотеки (закрытие и освобождение ресурсов соединения с базой данных);
    • setPageNo($num) — установка номера текущей страницы при выполнении запроса с разбиением на страницы;
    • setPageRows($num) — установка количества записей в строке при выполнении запроса с разбиением на страницы;
    • setDbName($name) — установка имени базы данных по умолчанию для операций;
    • escape($val) — фильтрация указанного параметра (предотвращение внедрения);
    • select($sql, $var1, $var2, $var3...) — выполнение SQL-запроса и возврат всего массива результатов;
    • selectPage($sql, $var1, $var2, $var3...) — выполнение SQL-запроса и возвращение массива результатов с разбивкой на страницы;
    • selectRow($sql, $var1, $var2, $var3...) — выполнение SQL-запроса и возвращение однострочного массива результатов;
    • selectOne($sql, $var1, $var2, $var3...) — выполнение SQL-запроса и возвращение значения первого столбца первой строки;
    • selectHash($sql, $var1, $var2, $var3...) — выполнение SQL-запроса и возвращение результата в виде массива хэшей, состоящего из первых двух столбцов;
    • exe($sql) — выполнение SQL-запроса;
    • insert($table, $values) — вставка одной записи в указанную таблицу;
    • update($table, $values, $where) — обновление записей в указанной таблице, соответствующих условию;
    • delete($table, $where) — удаление записей в указанной таблице, соответствующих условию;
    • hasError() — проверка наличия ошибки;
    • getError() — возврат описания ошибки;
    • getLogs() — возврат всех записей о выполненных запросах, времени выполнения, успешности, количестве затронутых строк.
  3. Частные методы: — connect() — проверка/подключение к базе данных; — filterVars($vars) — фильтрация и сборка параметров запроса; — fetchArgs($args) — фильтрация и замена параметров-заполнителей в запросе; — fetchResult($type = MYSQLI_ASSOC, $singleRow = false) — помещение результата запроса в массив и его возврат; — fetchError($errno = null, $error = null) — получение информации об ошибке базы данных.

Использование

  1. Простой пример:
// Подключение к библиотеке
require '../SpringMySQLi.php';

// Инициализация библиотеки
$dbh = new SpringMySQLi($dbHost, $dbUser, $dbUpwd, $dbName);

// Написание SQL и установка параметров запроса
$sql = 'SELECT * FROM member WHERE mid=#1';
$mid = 3;
$arr = $dbh->selectRow($sql, $mid); // При выполнении SQL #1 автоматически заменяется безопасным отфильтрованным значением $mid
print_r($arr);

// Количество параметров в SQL не ограничено, но их номера должны соответствовать позициям передаваемых значений
$sql = 'SELECT * FROM member WHERE username LIKE \'#1%\' AND status=#2';
$kw  = 'W';
$arr = $dbh->select($sql, $kw, '1');
print_r($arr);

// Вставка новой записи в указанную таблицу
$arr = array(
    'username'  => 'Taylor',
    'login_pwd' => md5('111111'),
    'email'     => 'taylor@test.com',
    'status'    => 1,
);
$mid = $dbh->insert('member', $arr);  // Операция вставки возвращает ID новой записи
echo 'inserted new member: ', $mid;

// Можно получить всю информацию о выполненных SQL-запросах (время выполнения, успех, количество затронутых строк)
$arr = $dbh->getLogs();
print_r($arr);
  1. Дополнительную информацию можно найти в файле demo/test.php в репозитории кода.

Вклад

  1. Fork этого репозитория.
  2. Создайте ветку Feat_xxx.
  3. Отправьте код.
  4. Создайте Pull Request.

Благодарности

  1. Спасибо каждому мастеру, который пришёл сюда.
  2. Благодарю вас за то, что вы поставили звёздочку.
  3. Желаю PHP бессмертия.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/springphp123-SpringMySQLi.git
git@api.gitlife.ru:oschina-mirror/springphp123-SpringMySQLi.git
oschina-mirror
springphp123-SpringMySQLi
springphp123-SpringMySQLi
master