Framework merupakan suatu perangkat lunak (software) yang bersifat penggunaan ulang suatu library atau classes yang ada di dalam sistem tersebut untuk menjadi suatu aplikasi. Di dalam framework PHP, sudah terdapat beberapa classes,objects dan library. Dengan begitu ketika kita membuat aplikasi menggunakan framework, kita bisa menggunakan fitur yang sudah ada di dalam software tersebut.
Framework adalah kerangka kerja. Framework juga dapat diartikan sebagai kumpulanscript (terutama class dan function) yang dapat membantu developer/programmer dalam menangani berbagai masalah-masalah dalam pemrograman seperti koneksi ke database, pemanggilan variabel, file,dll sehingga developer lebih fokus dan lebih cepat membangunaplikasi.Bisa juga dikatakan Framework adalah komponen pemrorgaman yang siap re-use kapansaja, sehingga programmer tidak harus membuat skrip yang sama untuk tugas yang sama.Misalkan saat anda membuat aplikasi web berbasis ajax yang setiap kali harus melakukanXMLHttpRequest, maka Xajax telah mempermudahnya untuk anda dengan menciptakan sebuahobjek khusus yang siap digunakan untuk operasi Ajax berbasis PHP. Itu adalah salah satu contohkecil, selebihnya Framework jauh lebih luas dari itu.Secara sederhana bisa dijelaskan bahwa framework adalah kumpulan fungsi (libraries),maka seorang programmer tidak perlu lagi membuat fungsi-fungsi (biasanya disebut kumpulanlibrary) dari awal, programmer tinggal memanggil kumpulan library atau fungsi yang sudah adadidalam framerwork, tentunya cara menggunakan fungsi-fungsi itu sudah ditentukan olehframework.
PHP Framework menggunakan metode pengembangan berbasis MVC. Namun apa itu MVC ? MVC merupakan suatu metode untuk memisahkan bagian-bagian dari suatu web aplikasi. MVC adalah kependekan dari Model View Controller. MVC terdiri dari tiga bagian yaitu;
Disinilah letak perbedaan utama antara framework dengan CMS atau PHP konvensional. Dengan metode MVC, bagian tampilan, logika serta query database diletakkan secara terpisah namun tetap sinkron sehingga pembuatan aplikasi menjadi lebih terstruktur dan sederhana. Model digunakan dalam menuliskan script database, Controller untuk mengembangkan logika pemrogramannya, sedangkan View berfungsi dalam menampilkan layout dari aplikasi yang kita buat. Kelebihan framework antara lain sebagai berikut :
Framework PHP