Both include lan require ngimport (lan execute) isi file PHP liyane menyang file saiki. Perbedaan siji-satungan yaiku cara nangani kegagalan: require nyebabake fatal error yen file ilang, dene include mung nggawe warning lan terus.
<?php
include "config.php"; // if missing → WARNING, script CONTINUES
require "database.php"; // if missing → FATAL ERROR, script STOPS
include → file missing → emits a Warning, execution continues (file's code skipped)
require → file missing → throws a Fatal Error, execution HALTS
Gunakake require kanggo file sing aplikasi ora bisa mlaku tanpa (kelas inti, konfigurasi kritis, setup database) — sampeyan pengen ngenteni yen ilang. Gunakake include kanggo file opsional (contone template sidebar) ing ngendi file ilang ora kudu ngebom laman.
require_once "functions.php"; // include the file ONLY if not already included
include_once "helper.php";
require_once/include_once ngimport file mung yen durung kita lakoni — penting banget kanggo cegah "cannot redeclare function/class" errors nalika file bisa diinklusi pirang-pirang kali (contone definisi kelas sing dijupuk dening pirang-pirang file).
// included files share the SAME scope and can define functions, classes, variables
// config.php:
$dbHost = "localhost";
// main.php:
require "config.php";
echo $dbHost; // "localhost" — the variable is available
// ❌ old style — manually requiring every class file
require_once "User.php";
require_once "Order.php";
// ✅ modern — Composer AUTOLOADING loads classes on demand automatically
require "vendor/autoload.php"; // one line; classes load when used (PSR-4)
$user = new User(); // User.php loaded automatically
Ing PHP modern, sampeyan jarang nggunakake require manual kanggo kelas — autoloader Composer nglodha dheweke nalika butuh. Sampeyan isih nggunakake require "vendor/autoload.php" siji kali kanggo bootstrap.
Ngerteni include vs require yaiku kawruh PHP dasar nanging penting — yaiku carane file PHP nuduhake kode, lan pembedane penting kanggo bener.
Poin utama yaiku perilaku kegagalan: require kanggo file penting (supaya aplikasi gagal cepet lan jelas yen file kritis ilang) lan include kanggo file opsional (supaya file non-kritis ilang ora ngebom laman).
Ngerti varian _once praktis penting banget kanggo cegah error "cannot redeclare" umum saka isine inklusi kelas utawa definisi fungsi loro-loroan.
Sawise penting uga ngerteni konteks modern: dene konstruk iki dhasar, PHP modern ngandel autoloading Composer (nglodha kelas nalika butuh) tinimbang require saben file manual, dadi ing kode saiki sampeyan sebagian besar mung require "vendor/autoload.php" siji lan anca-anca autoloading kanggo liyane.
Ngerti mekanik include/require (lan kapan saben mode kegagalan cocok) lan carane autoloading modern ngganti includes manual yaiku kawruh saben dina kanggo nggarap codebases PHP lawas lan anyar.