Pengertian PDO (PHP Data Objects)
Assalamualaikum
wr.wb
A.
Pengertian
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.
Assalamualaikum
wr.wb
B. Jenis Database Server yang didukung PDO Hingga saat penulisan tutorial ini (PHP versi 5.6) PDO mendukung setidaknya 12 jenis Interface/Database Server:
-
CUBRID
-
MS
SQL Server
-
Firebird
-
IBM
-
Informix
-
MySQL
-
MS
SQL Server
-
Oracle
-
ODBC
and DB2
-
PostgreSQL
-
SQLite
-
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.
CUBRID
MS
SQL Server
Firebird
IBM
Informix
MySQL
MS
SQL Server
Oracle
ODBC
and DB2
PostgreSQL
SQLite
4D
C. 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
saya menjalankan perintah tersebut pada PHP 5.6 bawaan XAMPP, berikut
adalah hasil yang didapat:
Array
( [0] => mysql [1] => sqlite )
Dari
tampilan diatas, dapat dilihat bahwa driver PDO bawaan PHP yang aktif
(dan yang bisa digunakan) hanyalah MySQL dan SQLite.
D. Referensi
<?php
print_r(PDO::getAvailableDrivers());
?>
Array
( [0] => mysql [1] => sqlite )
Dari
tampilan diatas, dapat dilihat bahwa driver PDO bawaan PHP yang aktif
(dan yang bisa digunakan) hanyalah MySQL dan SQLite.
D. Referensi