Pemrograman PHP memungkinkan kita untuk mengintegrasikan kode dari file lain ke dalam script yang sedang dijalankan. Salah satu cara untuk melakukan ini adalah dengan menggunakan fungsi require, include, require_once, dan include_once. Fungsi-fungsi ini memungkinkan kita untuk memasukkan file PHP lain ke dalam script yang sedang dijalankan, sehingga dapat mengurangi duplikasi kode dan mempermudah dalam pengelolaan kode. Namun perbedaan utama antara require dan include, serta require_once dan include_once adalah bagaimana mereka merespon jika file yang diminta tidak ditemukan atau tidak dapat dibuka. Pada artikel ini, kita akan mengenal semua fungsi tersebut secara lebih detail. Mari siapkan kopi dan enjoy.
Pengertian require, include, require_once, dan include_once
require: Fungsi PHP yang digunakan untuk memasukkan file PHP lain ke dalam script yang sedang dijalankan. Jika file yang diminta tidak ditemukan atau tidak dapat dibuka, maka akan muncul error yang menyebabkan script yang sedang dijalankan untuk berhenti.
include: Fungsi PHP yang digunakan untuk memasukkan file PHP lain ke dalam script yang sedang dijalankan. Jika file yang diminta tidak ditemukan atau tidak dapat dibuka, maka akan muncul warning, tetapi script akan tetap dijalankan.
require_once: Fungsi PHP yang digunakan untuk memasukkan file PHP lain ke dalam script yang sedang dijalankan. Jika file yang diminta sudah pernah dimasukkan sebelumnya, maka file tersebut tidak akan dimasukkan kembali. Jika file yang diminta tidak ditemukan atau tidak dapat dibuka, maka akan muncul error yang menyebabkan script yang sedang dijalankan untuk berhenti.
include_once: Fungsi PHP yang digunakan untuk memasukkan file PHP lain ke dalam script yang sedang dijalankan. Jika file yang diminta sudah pernah dimasukkan sebelumnya, maka file tersebut tidak akan dimasukkan kembali. Jika file yang diminta tidak ditemukan atau tidak dapat dibuka, maka akan muncul warning, tetapi script akan tetap dijalankan.
Semua fungsi ini digunakan untuk mengintegrasikan kode dari file lain ke dalam script yang sedang dijalankan, sehingga dapat mengurangi duplikasi kode dan mempermudah dalam pengelolaan kode. Namun perbedaan utama antara require dan include, serta require_once dan include_once adalah bagaimana mereka merespon jika file yang diminta tidak ditemukan atau tidak dapat dibuka.
Perbedaan , require, include, require_once dan include_once
Perintah | Hasil jika file tidak ditemukan | Hasil jika file di-include lebih dari satu kali |
---|---|---|
include | Warning, skrip tetap berjalan | Variabel dan fungsi di-define ulang, masalah kinerja |
include_once | Warning, skrip tetap berjalan | File hanya di-include satu kali saja |
require | Fatal error, skrip berhenti | Variabel dan fungsi di-define ulang, masalah kinerja |
require_once | Fatal error, skrip berhenti | File hanya di-include satu kali saja |
Kelebihan
- Memungkinkan untuk memisahkan kode dalam file yang berbeda, sehingga lebih mudah untuk diatur dan diupdate.
- Memungkinkan untuk menggunakan kode yang sama di beberapa skrip tanpa harus menyalin dan menyisipkan ulang kode yang sama.
- Menyederhanakan pengelolaan kode dengan memisahkan kode yang berbeda dalam file yang berbeda.
Kekurangan
- Jika file yang diminta tidak ditemukan, atau tidak dapat dibuka, maka akan menyebabkan masalah pada script yang sedang dijalankan.
- Penggunaan include_once atau require_once dapat menyebabkan masalah pada script jika digunakan secara tidak benar, karena jika kita tidak ingat untuk menggunakan include_once atau require_once, maka file yang sama dapat dimasukkan ke dalam script beberapa kali, yang dapat menyebabkan masalah.
- Penggunaan fungsi ini dapat menambah kompleksitas dari script jika digunakan dengan tidak benar atau dalam jumlah yang berlebihan.
Contoh
<?php require 'file1.php'; // jika require 'file1.php'; lagi maka akan muncul error dan kode akan berhenti echo "Hello World!"; ?>
<?php include 'file1.php'; // jika include 'file1.php'; lagi maka akan muncul warning tapi kode tetap berjalan echo "Hello World!"; ?>
<?php require_once 'file1.php'; require_once 'file1.php'; // kode ini akan menjalankan hanya sekali require_once 'file1.php'; walaupun ditulis 2 kali echo "Hello World!"; ?>
<?php include_once 'file1.php'; include_once 'file1.php'; // kode ini akan menjalankan hanya sekali include_once 'file1.php'; walaupun ditulis 2 kali echo "Hello World!"; ?>