Pada kesempatan kali ini kita akan membahas mengenai statement include, include_once, require, dan require_once pada PHP, yang terkadang membuat bingung, mana yang seharusnya digunakan.
Jump to:
- Perbedaan Include, include_once, require, dan require_once pada PHP
- Perbandingan perfomance antara include, include_once, require, dan require_once
- Kapan kita menggunakan include, include_once, require, dan require_once?
- Contoh penggunaan require_once pada PHP
I. Include Pada PHP
Seperti terjemahannya include berarti memasukkan, artinya kita memasukkan file kedalam dokumen kita, file tersebut bisa apa saja, termasuk script PHP, file konfigurasi, file HTML, dll.
Penulisan include pada PHP dapat dilakukan dengan dua cara, yaitu dengan bentuk fungsi atau bentuk statement, contoh:
<?php
// Bentuk fungsi
include ('includes/header.php');
// Bentuk statement
include 'includes/header.html';
Sobat dapat memilih mana yang lebih nyaman digunakan.
Ketika PHP gagal meng-include file yang dimaksud, maka script PHP tetap berjalan, hanya ada peringatan berupa warning bahwa file tidak ditemukan, warning ini cukup dihilangkan dengan menambahkan tanda @ di awal menjadi @include
II. Include_once Pada PHP
Sama seperti include namun kali ini dengan tambahan _once, yang terjemahannya sekali, jadi kita ingin menyertakan file sekali saja.
Sehingga ketika kita menuliskan include_once lebih dari sekali pada file yang sama, maka hanya include_once yang pertama yang dijalankan.
Berikut ini contoh penulisan include_once
pada PHP:
<?php
// Bentuk fungsi
include_once ('includes/header.php');
// Bentuk statement
include_once 'includes/header.php';
Seperti sebelumnya ketika PHP gagal meng-include file, maka akan muncul peringatan berupa warning bahwa file tidak ditemukan, yang juga dapat dihilangkan dengan penambahan @
include
maka ketika file tidak ditemukan, script tetap berjalan.III. Require Pada PHP
Seperti terjemahannya, require berarti butuh, artinya kita butuh file tersebut, sehingga jika file tersebut tidak ada maka script selanjutnya tidak akan berjalan.
Penulisan require pada PHP
Seperti sebelumnya, require pada php dapat ditulis dalam dua cara, yaitu bentuk fungsi dan statement, contoh:
<?php
// Bentuk fungsi
require ('includes/header.php');
// Bentuk statement
require 'includes/header.php';
Ketika file includes/header.php
tidak ditemukan, maka akan muncul pesan Fatal error, seperti kita ketahui bahwa Fatal error artinya script berhenti.
IV. Require_once Pada PHP
Sama seperti require
, namun kali ini, file hanya disertakan sekali, sehingga jika ada beberapa kali require_once
, maka hanya file pertama yang disertakan.
Penulisan require_once pada PHP
Berikut ini contoh penulisan require_once
pada PHP:
<?php
// Bentuk fungsi
require_once ('includes/header.php');
// Bentuk statement
require_once 'includes/header.php';
Sama seperti require
, ketika file includes/header.php
tidak ditemukan, maka script akan berhenti dan muncul pesan Fatal error
V. Perbedaan Include, include_once, require, dan require_once pada PHP
Jadi berdasarkan penjelasan diatas maka perbedaan dari keempat statement tersebut adalah:
include
danrequire
hampir sama yaitu kita dapat menyertakan file yang sama persis berulang kali, namun bedanya, padarequire
, jika file tidak ditemukan maka script akan berhenti dan muncul pesan Fatal error sedangkan padainclude
script dapat tetap berjalan.- kegunaan
include_once
danrequire_once
juga mirip, yaitu kita menyertakan file hanya sekali, namun bedanya padarequire_once
jika file tidak ditemukan maka script akan berhenti sedangkan padainclude_once
script tetap berjalan.
Jika digambarkan bentuk tabel, perbedaan include, include_once, require, dan require_once pada PHP adalah:
Statement | Load File Yang Sama | Jika File Tidak Ditemukan |
---|---|---|
Include | Ya | Scipt tetap jalan |
Include_once | Tidak | Scipt tetap jalan |
Require | Ya | Script berhenti |
Require_once | Tidak | Script berhenti |
VI. Kapan menggunakan Include, include_once, require, dan require_once pada PHP
Dari perbedaan diatas mungkin kita akan berpendapat, kalau begitu kenapa tidak menggunakan require atau require_once saja? jadi tahu jika file tidak ditemukan, mmm… jawabnya bisa ya dan bisa tidak, namun cenderung tidak.
Pada intinya include
digunakan untuk menyertakan file-file umum seperti file template, dll, sedangkan require digunakan untuk:
- Menyertakan file penting yang tanpanya script kita tidak berjalan, seperti file yang berisi konfigurasi server, sekumpulan fungsi atau class.
- Menghindari collision (bentrok) antar statement yang namanya sama, seperti pemanggilan fungsi atau class yang sama lebih dari sekali.
VII. Perbandingan perfomance include, include_once, require, dan require_once pada PHP
Ketika kita menggunakan include_once
atau require_once
, maka PHP akan mencatat file apa saja yang telah disertakan, sehingga jika kemudian ada file yang sama di sertakan lagi, maka PHP akan tahu dan mengabaikannya.
Dari sini secara logika penggunaan include_once
dan require_once
memakan lebih banyak waktu daripada include
dan require
?
Jawabnya ya, penggunaan *_once
memakan lebih banyak waktu, namun perbedaan ini terasa jika kita menggunakannnya ratusan kali 😀 yang tentu saja amat jarang ditemui, sehingga ketika menggunnakannya, tidak usah risau dengan masalah perfomance.
VIII. Contoh Penggunaan Require_once pada PHP
Berikut ini contoh penggunaan require_once
pada php, misalkan kita mempunyai file functions.php
dengan code sebagai berikut:
<?php
$cfg_url = 'www.jagowebdev.com';
function printOutput($text)
{
echo $text;
}
kemudian dengan require_once
kita sertakan file tersebut pada file index.php
:
<?php
require_once 'functions.php';
echo $cfg_url; // www.jagowebdev.com
echo printOutput('Tests Output'); // Tests Output
Lebih Lanjut
Untuk penjelasan lebih lanjut bisa dibaca pada halaman dokumentasi php: include, include_once, require, dan require_once
Demikian pembahasan mengenai Include, include_once, require, dan require_once pada PHP, semoga bermanfaat.
Subscibe Now
Suka dengan artikel di Jagowebdev.com? jangan sampai ketinggalan, segera join ke milis kami untuk update informasi terbaru dari Jagowebdev.com
9 Feedback dari pembaca
Terimakasih atas penjelasan nya gan bermanfaat, semoga berkah ya
Aamiin…
Mantab skli, boleh tanya seputar include menggungan page?
Bisa mas…
wiih. joos makasih penjelasannya.
Sama sama mas…:)
Tanya.
Apa bedanya ./ dengan ../ dalam hal folder.
Kalau ../ berarti satu folder diatasnya mas
penjelasannya ringan dan mudah dipahami. jazaakumullah khoir.