DBHelper For PHP

You can do many database operations without writing any SQL code with DBHelper. you need complex SQL queries or you want write sql query? DBHelper allows you to do this too.

Example Usage

PHP

include "DBHelper/DBHelper.php";
use \DBHelper\DBHelper;

$db = new DBHelper();

$db->connect();

$users = $db->get('users');
print_r($users);

$db->disconnect();

SQL Print

SELECT * FROM users

Result

(
    [0] => Array (
        [user_id] => 1
        [user_mail] => foobar@github.com
        [user_password] => 12345
        [json] => {"user":"Foo Bar","messages":["Foo","Bar"]}
        [created_at] => 2021-05-09 02:57:49
    )
    ...
)

Table of Contents

Config

You can configuration for database settings from DBHelper/DBHelper.php

private $host = '';
private $user = '';
private $password = '';
private $database = '';

Next, include DBHelper where you want to use it and create DBHelper.

include "DBHelper/DBHelper.php";
use \DBHelper\DBHelper;

$db = new DBHelper();

Connect

If you want access from database, you need connect to database.

$db->connect();

Disconnect

You can disconnect database when your work is done.

$db->disconnect();

Methods

# Get All

PHP
$db->get('users');
SQL
SELECT * from users

# Get First

PHP
$db->first('users');
SQL
SELECT * from users LIMIT 1

# Insert

PHP
$values = array(
    'user_mail' => 'foo@bar.com',
    'user_password' => 'foobar'
);
$db->values($values);
$db->insert('users');
SQL
INSERT INTO users SET user_mail = "foo@bar.com", user_password = "foobar"

# Update

PHP
$values = array(
    'user_mail' => 'bar@foo.com'
);
$db->values($values);

$db->whereIn(array(
    'user_mail' => 'foo@bar.com'
));
$db->update('users');
SQL
UPDATE users SET user_mail = "bar@foo.com" WHERE user_mail = "foo@bar.com"

# Delete

PHP
$db->whereIn(array(
    'user_mail' => 'foo@bar.com'
));
$db->delete('users');
SQL
DELETE FROM users WHERE user_mail = "foo@bar.com"

# Query Builder

PHP
$db->queryBuilder('SELECT * FROM users');
SQL
SELECT * FROM users

Params

# whereIn

PHP
$db->whereIn(array(
    'user_mail' => 'foo@bar.com',
    'user_passowrd' => 'foobar'
));
SQL
WHERE user_mail = "foo@bar.com" AND user_password = "foobar"

# whereOr

PHP
$db->whereIn(array(
    'user_mail' => 'foo@bar.com',
    'user_passowrd' => 'foobar'
));
SQL
WHERE user_mail = "foo@bar.com" OR user_password = "foobar"

# whereLike

PHP
$db->whereLike(array(
    'user_mail' => 'foo@bar.com',
    'user_passowrd' => 'foobar'
));
SQL
WHERE user_mail LIKE "foo@bar.com" AND user_password LIKE "foobar"

# whereNotIn

PHP
$db->whereNotIn(array(
    'user_mail' => 'foo@bar.com',
    'user_passowrd' => 'foobar'
));
SQL
WHERE user_mail != "foo@bar.com" AND user_password != "foobar"

# whereNotOr

PHP
$db->whereNotOr(array(
    'user_mail' => 'foo@bar.com',
    'user_passowrd' => 'foobar'
));
SQL
WHERE user_mail != "foo@bar.com" OR user_password != "foobar"

# whereNotLike

PHP
$db->whereNotLike(array(
    'user_mail' => 'foo@bar.com',
    'user_passowrd' => 'foobar'
));
SQL
WHERE user_mail NOT LIKE "foo@bar.com" AND user_password NOT LIKE "foobar"

# fields

PHP
$db->fields(array(
    'user_mail',
    'user_passowrd'
));
SQL
SELECT user_mail, user_password

# distinct

PHP
$db->fields(array(
    'user_mail'
));
$db->distinct(true);
SQL
SELECT DISTINCT user_mail

# count

PHP
$db->fields(array(
    'user_mail'
));
$db->count(true);
SQL
SELECT COUNT(user_mail)

# orderBy

PHP
$db->orderBy('created_at', 'ASC');
SQL
ORDER BY created_at ASC

# limit

PHP
$db->limit(1);
SQL
LIMIT 1

# offset

PHP
$db->offset(15);
SQL
OFFSET 15

# jsonParser

If you saving JSON on database, you can parse array to json or json to array with jsonParser. Just say pattern of your json data to jsonParser

PHP
$json = array(
    'foo' => array(
        'bar'
    )
);
$values = array(
    'json' => $json
);

$db->values($values);

$db->whereIn(array(
    'user_mail' => 'foo@bar.com'
));

$db->jsonParser(array(
    'json'
));

$db->update('users');
SQL
UPDATE users SET json = "{\"foo\":[\"bar\"]}" WHERE user_mail = "foo@bar.com"

# values

PHP
$values = array(
    'user_mail' => 'foo@bar.com',
    'user_password' => 'foobar'
);
$db->values($values);

$db->insert('users');
SQL
INSERT INTO users SET user_mail = "foo@bar.com", user_password = "foobar"