Lompat ke konten
A alfach.com

Pixie : PHP Query Builder Ringan dan Cepat Mirip Milik Laravel

A alfach.com
2 menit baca
Pixie : PHP Query Builder Ringan dan Cepat Mirip Milik Laravel

Bagi pengguna laravel pasti pernah menggunakan query builder bawaan laravel, dan bagi saya query builder milik laravel mudah, cepat dan ringan. Namun adakalanya, saya hanya perlu menggunakan query buildernya pada PHP tanpa harus menginstall laravel secara keseluruhan. Nah, pada akhirnya saya menemukan pixie.

Pixie ini sangat mirip query builder milik laravel. Pixie mendukung penggunaan database MySQL, Postgresql, dan sqlite. Dan pastinya sudah melakukan sanitasi query, prefix dan lain sebagainya. Beberapa fitur diantaranya adalah :

- Query Events
- Nested Criteria
- Sub Queries
- Nested Queries
- Multiple Database Connections.

Instalasi

Untuk menggunakan pixie, minimal membutuhkan PHP versi 5.3 dan selanjutnya kita dapat menginstall-nya melalui composer :

Shell
composer require usmanhalalit/pixie

Lalu untuk membuka koneksi :

PHP
// Make sure you have Composer's autoload file included
require 'vendor/autoload.php';

$config = array(
            'driver'    => 'mysql', // Db driver
            'host'      => 'localhost',
            'database'  => 'your-database',
            'username'  => 'root',
            'password'  => 'your-password',
            'charset'   => 'utf8', // Optional
            'collation' => 'utf8_unicode_ci', // Optional
            'prefix'    => 'cb_', // Table prefix, optional
        );

new \Pixie\Connection('mysql', $config, 'QB');

// Run query
$query = QB::table('my_table')->where('name', '=', 'Sana');

Query

Mungkin bagi pengguna laravel tidak perlu belajar lagi, karena query builder sama seperti di laravel

Menampilkan semua data

PHP
$query = QB::table('my_table')->where('name', '=', 'alfach');

// Get result
$query->get();

Menampilkan hanya satu data

PHP
$query = QB::table('my_table')->where('name', '=', 'alfach');
$row = $query->first();

Menghitung jumlah data

PHP
$query = QB::table('my_table')->where('name', '=', 'alfach');
$query->count();

Insert

PHP
$data = array(
    'name' => 'Sana',
    'description' => 'Blah'
);
$insertId = QB::table('my_table')->insert($data);

Update

PHP
$data = array(
    'name'        => 'Sana',
    'description' => 'Blah'
);

QB::table('my_table')->where('id', 5)->update($data);

Delete

PHP
QB::table('my_table')->where('id', '=', 5)->delete();

Menjalankan raw query

SQL
$query = QB::query('select * from cb_my_table where age = 12')->get();

Sama persis kan?masih banyak fitur lain yang dimiliki pixie. Untuk tahu lebih banyak silahkan meluncur ke https://github.com/usmanhalalit/pixie

Bacaan terkait

php

Menerapkan IP Blocker di Laravel

Untuk meningkatkan security di website, salah satunya dengan menerapkan IP blocker atau mem-blokir IP address yang mengakses website. Di laravel salah satunya dengan...

1 menit

Komentar (0)

Belum ada komentar. Jadilah yang pertama.

Tulis komentar

Komentar akan dimoderasi sebelum tampil.

Tidak akan dipublikasikan.