Simple Database connection using PDO

Installation

Run in terminal

composer require kisphp/database:~2.0

Then in php file add

<?php
...
require 'paht/to/vendor/autoload.php';
...

Connect to database

<?php

use Kisphp\Kisdb;

$db = Kisdb::getInstance();
$db->connect(
    $databaseHost,      // localhost
    $databaseUsername,  // root
    $databasePassword,  // {brank}
    $databaseName       // test
);

Database Insert

$db->insert('table_name', 'data array');
$db = Kisdb::getInstance();

$db->insert('test_table', [
    'column_1' => 'value_1',
    'column_2' => 'value_2',
]);

// will return last_insert_id

Database update

$db->update('table_name', 'data array', 'condition value', 'column name (default=id)');

$db = Kisdb::getInstance();

$db->update('test_table', [
    'column_1' => 'value_1',
    'column_2' => 'value_2',
], 20);

// will return affected_rows

Get single value

$db = Kisdb::getInstance();

$value = $db->getValue("SELECT column_1 FROM test_table");

Get pairs

$db = Kisdb::getInstance();

$pairs = $db->getPairs("SELECT id, column_1 FROM test_table");

/*
will result
$pairs = [
     [
         'id' => '1',
         'column_1' => 'c1.1',
     ],
     [
         'id' => '2',
         'column_1' => 'c2.1',
     ],
     [
         'id' => '3',
         'column_1' => 'c3.1',
     ],
];
*/

Get Custom query

$db = Kisdb::getInstance();

$a = $db->query("SELECT * FROM test_table ");

while ($b = $a->fetch(\PDO::FETCH_ASSOC)) {
    $this->assertGreaterThan(2, count($b));
}