Rabu, 19 Februari 2014

Perbedaan Include dan Require dalam PHP

Perbedaan include dan recuire, adalah salah satu pertanyaan yang paling sering ditanyakan oleh orang-orang yang belajar PHP.

Ada include(), include_once(), require(), require_once()

Apa perbedaan nya? Kapan digunakannya?

Fungsi Include
Fungsi Include digunakan di PHP ketika kita ingin menyertakan suatu file kedalam proses yang saat ini sedang berjalan. Dibutuhkan satu argumen yang akan menjadi string ke path file yang anda ingin sertakan.

include "halaman_utama.php";

Kode dalam file yang disertakan akan dijalankan ketika fungsi Include dipangil.

Hal ini dapat digunakan dalam sistem template PHP dimana Anda memiliki banyak bagian seperti, header, sidebar, dan footer.
contoh:

include "header.php";
<div id="content"></div>
include "footer.php";

Akan muncul pesan error jika file yang di include kan tidak ditemukan.

Fungsi include_once
Fungsi Include_once hampir sama dengan fungsi include, namun akan membatasi file yang hanya akan digunakan 1 kali.

Fungsi Include akan memungkinkan anda untuk memasukan file yang sama beberapa kali sehingga anda dapat menggunakannya dalam sebuah loop.

foreach($products as $product){
#Akan menampilkan semua produk
include "product.php";
}
NAMUN, dengan include_once anda hanya akan menampilkan file produk.php satu kali saja.

foreach($products as $product){
#Akan menampilkan satu produk
include_once "product.php";
}
Kegunaan lain dari Include once adalah jika anda mendefinisikan suatu function dalam file yang disertakan, maka hal ini akan menghindari definisi berulan-ulang terhadap fungsi tersebut.

Fungsi Require
Fungsi Require bekerja seperti fungsi Include, namun jika file tersebut tidak ditemukan maka akan melemparkan PHP Error. Fungsi ini dibutuhkan untuk aplikasi yang bekerja dengan benar.

require_once "halaman_utama.php";
Ini akan menjadi Fatal error E_COMPILE_ERROR yang akan menghentikan jalannya aplikasi, dimana fungsi include hanya akan menimbuklan pesan error tapi tidak menghentikan aplikasi, tapi akan terus berlanjut.

Fungsi Require_Once
Yang terakhir adalah Fungsi Require_once, yang merupakan kombinasi fungsi Require dan Include_once. Ini akan memastikan bahwa file ada sebelum menambahkannya ke halaman, jika tidak ada maka akan memunculkan Fatal Error. Plus itu akan memastikan bahwa file tersebut hanya akan digunakan sekali pada halaman web.
contoh:

require_once "header.php";
<div id="content"></div>
require_once "sidebar.php";
require_once "footer.php";

Fungsi ini paling ketat diantara 4 fungsi diatas.