Koneksi dibuat dengan membuat sebuah instance dari kelas dasar PDO. Terlepas dari driver mana yang digunakan, nama kelas PDO yang digunakan.
<?php$dbh = PDO baru('mysql:host=localhost;dbname=test', $user, $pass);?>
Catatan: Jika ada kesalahan koneksi, objek pengecualian PDOException akan dilempar.
<?phptry { $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); foreach($dbh->query('SELECT * from FOO') sebagai $row) { print_r ($baris); } $dbh = null;} catch (PDOException $e) { cetak "Kesalahan!: " . "<br/>"; mati();}?>
Setelah berhasil menghubungkan data, sebuah instance dari kelas PDO dikembalikan ke skrip. Koneksi ini tetap aktif selama siklus hidup objek PDO.
Untuk menutup koneksi, Anda perlu menghancurkan objek untuk memastikan bahwa semua referensi yang tersisa telah dihapus. Anda dapat menetapkan nilai NULL ke variabel objek.
Jika Anda tidak melakukan ini, PHP akan secara otomatis menutup koneksi di akhir skrip.
<?php$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); // Gunakan koneksi di sini // Sekarang proses selesai, tutup koneksi di sini $dbh = null ;?>
Banyak aplikasi web mendapat manfaat dari penggunaan koneksi persisten ke layanan database.
Koneksi persisten tidak ditutup setelah skrip berakhir dan di-cache serta digunakan kembali ketika permintaan koneksi skrip lain menggunakan kredensial yang sama dibuat.
Caching koneksi persisten dapat membuat aplikasi web lebih cepat dengan menghindari overhead pembuatan koneksi baru setiap kali skrip perlu berkomunikasi dengan database.
<?php$dbh = PDO baru('mysql:host=localhost;dbname=test', $user, $pass, array( PDO::ATTR_PERSISTENT => true));?>
Catatan: Jika Anda ingin menggunakan koneksi persisten, Anda harus menyetel PDO::ATTR_PERSISTENT dalam larik opsi driver yang diteruskan ke konstruktor PDO. Jika atribut ini disetel dengan PDO::setAttribute() setelah objek diinisialisasi, driver tidak akan menggunakan koneksi persisten.