Tuesday, May 4, 2010

Doctrine, ORM untuk PHP

Kebetulan saat sedang mengerjakan karya tulis setara D3 yang biasa disebut di Universitas Gunadarma sebagai penelitian ilmiah, saya tak sengaja menemukan sebuah ORM (Object Relational Mappping) yang berjalan di PHP yaitu Doctrine. Karya tulis saya memang berupa website untuk administrasi dan membutuhkan koneksi serta penyimpanan data di database yang kebetulan memakai MySQL.


Membangun website memang tidaklah mudah terlebih jika berurusan dengan query yang lumayan rumit. Belum lagi relasi antar tabel yang harus dibuat dan lain sebagainya. Ditambah lagi jika menggunakan PHP yang berbasiskan objek. Rasanya kurang afdol kalau tidak menggunakan ORM untuk mengolah data dari database.

Doctrine merupakan ORM yang cukup luar biasa, untuk mempelajarinya benar-benar dimudahkan terlebih bagi saya yang masih awam. Dokumentasinya cukup baik dan tersedia berbagai contoh dalam situs resminya disini. Pengertian ORM itu sendiri secara singkat dapat dilihat disini.

Dengan menggunakan Doctrine, kita tidak lagi fokus terhadap tabel-tabel dalam database. Kita hanya perlu membuat objek yang merupakan pemetaan logical dari tabel. Dan nantinya Doctrine yang bekerja untuk mewujudkan skema tabel dari objek yang kita buat. Objek tersebut dituliskan dalam sebuah Model yang diturunkan dari kelas Doctrine_Record dan kemudian didefinisikan atribut-atribut yang diperlukan. Contoh dari model sederhana dapat dilihat disini.

Untuk membuat relasi pun sangat dimudahkan, kita hanya perlu menghubungkan objek-objek sesuai dengan keterhubungan antar objek tersebut dalam function set_up di masing-masing model.

Doctrine juga menyediakan bahasa query yaitu DQL (Doctrine Query Language) yang terinspirasi pada
HQL (Hibernate Query Language) milik Hibernate di bahasa pemrograman Java.
Kira-kira seperti itulah pemahaman saya sementara ini.

No comments:

Post a Comment