Cara menggunakan enable pdo php

Apabila Anda mengikuti tutorial di yukcoding.blogspot.com, hingga saat ini kita telah mempelajari penggunaan mysql extension dan mysqli extension. Selain kedua metode ini, terdapat 1 lagi cara untuk menghubungkan antara PHP dengan MySQL, yakni menggunakan PDO extension. Dalam tutorial kali ini kita akan membahas lebih dalam tentang PDO.

Pengertian PDO (PHP Data Objects)

PDO (PHP Data Objects) adalah interface universal yang disediakan PHP untuk “berkomunikasi” dengan database server. Maksud istilah “interface universal” disini adalah bahwa PDO tidak terikat dengan aplikasi database tertentu. Apabila saat ini kita menggunakan database MySQL dan dikemudian hari ingin bermigrasi menggunakan PostgreSQL, kita hanya tinggal mengganti cara pemanggilan awal PDO dan seluruh kode program yang ada bisa langsung digunakan untuk database baru.

Kondisi ini berbeda jika menggunakan mysql extension atau mysqli extension. Kedua extension ini hanya bisa bekerja dengan database MySQL. Karena alasan inilah banyak sebaiknya kita mulai beralih menggunakan PDO dibandingkan mysqli.

Secara teknis, apabila menggunakan mysql atau mysqli extension, PHP langsung berhubungan dengan MySQL Server, tetapi jika menggunakan PDO, ia tidak berhubungan langsung dengan database, tetapi hanya sebagai “interface”. Konsep PDO ini dapat digambarkan sebagai berikut:

PHP PDO –> Database Driver –> Database Server

PDO bekerja dengan metode yang disebut “data-access abstraction layer”. Artinya, apapun jenis database server yang digunakan, kode PHP yang ditulis akan tetap sama. PDO menyediakan“abstraction layer” untuk berkomunikasi dengan database server.

Untuk menggunakan PDO, kita harus mengaksesnya menggunakan object. PDO tidak menyediakan cara penulisan procedural style seperti mysqli atau mysql extension. Karena itu, jika anda kurang paham tentang istilah pemrograman object seperti class, method, dan property, silahkan mempelajarinya pada artikel Konsep Dasar Pemrograman Berorientasi Objek (OOP).

PHP mulai menyediakan PDO extension sejak versi 5.1 keatas.

Jenis Database Server yang didukung PDO

Hingga saat ini (PHP versi 7) PDO mendukung setidaknya 12 lebih jenis Interface/Database Server, diantaranya :

  1. CUBRID
  2. MS SQL Server
  3. Firebird
  4. IBM
  5. Informix
  6. MySQL / MariaDB
  7. MS SQL Server
  8. Oracle
  9. ODBC and DB2
  10. PostgreSQL
  11. SQLite
  12. 4D

List ini dapat Anda lihat dari http://php.net/manual/en/pdo.drivers.php

Dapat dilihat bahwa PDO mendukung banyak aplikasi database populer seperti: Oracle, Microsoft SQL Server, dan PostgreSQL. Dengan membuat kode PHP menggunakan PDO, secara tidak langsung kita juga membuka kemungkinan untuk menggunakan database server selain MySQL, sehingga menjadi lebih fleksibel.

Cara Mengaktifkan PDO Extension

Walaupun PDO Extension telah aktif secara “default” pada PHP versi 5.1 keatas, tetapi tidak semua database driver bisa digunakan. Dengan kata lain, untuk alasan performa, PHP me-nonaktifkan beberapa driver database seperti Oracle atau PostgreSQL di dalam PDO.

Untuk melihat driver database apa saja yang telah aktif dan bisa langsung digunakan, bisa menggunakan fungsi (lebih tepatnya: static method) PDO::getAvailableDrivers() :

<?php
print_r(PDO::getAvailableDrivers());
?>

Ketika kita menjalankan perintah tersebut pada PHP 5.6 bawaan XAMPP, berikut adalah hasil yang didapat :
Array ( [0] => mysql [1] => sqlite )

Dari hasil diatas, dapat dilihat bahwa driver PDO bawaan PHP yang aktif (dan yang bisa digunakan) hanyalah MySQL dan SQLite. Jadi bagaimana cara mengaktifkan driver untuk database lainnya ? Caranya adalah mengubah setingan php.ini.

File php.ini adalah file konfigurasi yang digunakan PHP. Karena saya menggunakan PHP yang diinstall dari XAMPP di drive C, lokasinya adalah C:\xampp\php\php.ini.

Silahkan buka file php.ini dengan aplikasi text editor, kemudian search kata “pdo”. Dalam versi PHP yang saya gunakan, hasil pencarian “pdo” akan tampil pada baris ke-1010, seperti gambar dibawah :

Cara menggunakan enable pdo php

Pada baris inilah kita mengaktifkan driver database PDO. Perhatikan library yang diawali dengan “php_pdo“, inilah driver-driver database PDO yang tersedia di dalam PHP. Dapat dilihat driver yang telah aktif hanya php_pdo_mysql.dll dan php_pdo_sqlite.dll.

Untuk mengaktifkannya, silahkan hapus tanda titik koma (;) dari awal baris nama driver yang ingin digunakan. Sebagai contoh, saya akan mengaktifkan extension=php_pdo_pgsql.dll yang merupakan driver dari database PostgreSQL:

Cara menggunakan enable pdo php

Selanjutnya, save file php.ini, kemudian restart web server Apache (matikan dan hidupkan kembali melalui XAMPP Control Panel).

Apa yang dimaksud dengan PDO?

PHP Data Objects (PDO) merupakan sebuah extension/library yang hadir bersamaan dengan direleasenya PHP versi 5. PDO dibangun menggunakan bahasa C/C++ dan PDO menawarkan sebuah paradigma pemrograman berorientasi object (Object Oriented Programming/OOP) di dalam script PHP yang Anda bangun sehingga dapat berjalan lebih ...

Apa perbedaan penggunaan mysqli dan PDO?

PDO menggunakan pemrograman objek, mysqli extension tersedia dalam bentuk objek dan prosedural (diakses melalui fungsi-fungsi) sedangkan mysql extension sepenuhnya menggunakan pemograman prosedural.