Jika Anda berpengalaman dalam bahasa pemrograman C, Anda pasti familiar dengan perintah include yang hampir selalu muncul di awal kode program C. PHP memiliki dua macam fungsi untuk maksud yang sama, namun dengan karakteristik yang khas untuk masing masing fungsi. Fungsi yang pertama adalah fungsi include() dan yang kedua adalah fungsi require().
Apakah require() dan include() itu benar-benar sama cara kerjanya?
Tentu saja tidak, sebab jika samafungsinya tentu tidak selayaknya dibedakan fungsinya. Perbedaan mendasar antara kedua fungsi ini adalah:
- Fungsi require() akan selalu digantikan oleh isi dari file yang ditunjuk dalam fungsi ini dan tidak dapat digunakan dalam percabangan/perkondisian (seperti perkondisian "jika ini maka require file") , karena file yang ditunjuk akan selalu direferensi tanpa peduli kondisi struktur/aliran script.
- Fungsi include() akan mengatur pembacaan file yang ditunjuk dapat sesuai dengan kondisi struktur/aliran script, sehingg fungsi ini dapat digunakan pada percabangan/perkondisian.
Melihat ciri-ciri di atas,
require() akan sesuai digunakan untuk mereferensi file yang berisikan variabel dan fungsi-fungsi global yang digunakan pada seluruh bagian dari script utama. Sementara
include() umumnya digunakan untuk menyisipkan kode program/script atau tag HTML pada program/script utama, misalkan untuk header atau footer setiap halaman dalam sebuah situs.
Catatan yang penting untuk kedua fungsi ini, parser PHP akan meninggalkan mode PHP dan kembali ke mode HTML standar pada saat membaca file yang ditunjukkan oleh kedua fungsi ini. Itu sebabnya pada contoh di atas, semua file yang ditunjuk oleh fungsi-fungsi ini selalu dimulai dengan tag < ? php dan diakhiri dengan tag ? > untuk mengembalikan mode file ke mode script PHP.