ova777/

MYSQLi 扩展库

v1.0.1 2016-08-29 05:39 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:58:28 UTC


README

MYSQLi 扩展库

0. 安装

composer require ova777/mysqli

然后连接 composer 自动加载器

require_once __DIR__.'/vendor/autoload.php';

1. 连接到数据库

$db = new \ova777\MYSQLi\Connection('localhost', 'user', 'password', 'database');

2. 获取数据请求

//Все строки результата в виде массива ассоциативных массивов
$rows = $db->command('SELECT * FROM table')->queryAll();
//Первую строка результата в виде ассоциативного массива
$row = $db->command('SELECT * FROM table')->queryRow();
//Данные первой колонки результата
$column = $db->command('SELECT * FROM table')->queryColumn();
//Первый столбец первой колонки
$value = $db->command('SELECT * FROM table')->queryScalar();

3. 将值绑定到请求中

//Один параметр
$rows = $db->command('SELECT * FROM table WHERE id=?')
    ->bind('i', 1)
    ->queryAll();
    
//Несколько параметров
$rows = $db->command('SELECT * FROM table WHERE id=? AND foo=?')
    ->bind('is', array(1, 'bar'))
    ->queryAll();

4. INSERT, UPDATE, DELETE 请求

$db->command('INSERT INTO table SET int_col=?, str_col=?')
    ->bind('is', array(1, 'foo'))
    ->execute();

5. 重复使用准备好的请求

//Полготавливаем запрос
$cmd = $db->command('INSERT INTO table SET a=?,b=?');
//Выполняем запросы
$cmd->bind('is', array(1, 'foo'))->execute();
$cmd->bind('is', array(2, 'bar'))->execute();
//При повторном вызове bind можно не передавать типы значений
$cmd->bind(array(3, 'xyz'))->execute();
...
$cmd->close();