Perbedaan include dan require php

Dalam PHP:

Table of Contents

  • Sebuah jawaban setelah 7 tahun untuk 2018
  • Apakah perbedaan penggunaan fungsi include () dan require () di PHP?
  • Apa fungsi include dan require?
  • Apa itu require pada PHP?
  • Apa itu include dalam bahasa pemrograman?

  • Kapan saya harus menggunakan require vs. include?
  • Kapan saya harus menggunakan require_once vs. include_once?

Ada require dan include_once juga.

Jadi pertanyaan Anda seharusnya ...

  1. Kapan saya harus menggunakan require vs. include?
  2. Kapan saya harus menggunakan require_once vs. require

Jawaban untuk 1 dijelaskan di sini .

Fungsi memerlukan () identik dengan menyertakan (), kecuali bahwa ia menangani kesalahan secara berbeda. Jika kesalahan terjadi, fungsi include () menghasilkan peringatan, tetapi skrip akan melanjutkan eksekusi. Wajib () menghasilkan kesalahan fatal, dan skrip akan berhenti.

Jawaban ke 2 dapat ditemukan di sini .

Pernyataan require_once () identik dengan mengharuskan () kecuali PHP akan memeriksa apakah file tersebut telah disertakan, dan jika demikian, tidak termasuk (memerlukan) lagi.

Menggunakan

  • membutuhkan
    ketika file tersebut adalah wajib oleh aplikasi Anda, mis. templat pesan penting atau file yang berisi variabel konfigurasi yang tanpanya aplikasi akan rusak.

  • require_once
    saat file berisi konten yang akan menghasilkan kesalahan pada inklusi berikutnya, mis. function important() { /* important code */} pasti diperlukan dalam aplikasi Anda tetapi karena fungsi tidak dapat dideklarasikan ulang tidak boleh dimasukkan lagi.

  • termasuk ketika file tidak diperlukan dan aliran aplikasi harus dilanjutkan ketika tidak ditemukan, mis.
    bagus untuk template yang mereferensikan variabel dari lingkup saat ini atau sesuatu

  • include_once
    dependensi opsional yang akan menghasilkan kesalahan pada pemuatan berikutnya atau mungkin inklusi file jarak jauh yang Anda tidak ingin terjadi dua kali karena overhead HTTP

Namun pada dasarnya, terserah Anda kapan harus menggunakan yang mana.

Saran saya adalah cukup gunakan require_once 99.9% dari waktu.

Menggunakan require atau include sebagai gantinya menyiratkan bahwa kode Anda tidak dapat digunakan kembali di tempat lain, yaitu bahwa skrip yang Anda tarik sebenarnya jalankan kode alih-alih membuat tersedia kelas atau pustaka fungsi.

Jika Anda memerlukan/menyertakan kode yang dijalankan saat itu juga, itu adalah kode prosedural, dan Anda perlu mengenal paradigma baru . Seperti pemrograman berorientasi objek, pemrograman berbasis fungsi, atau pemrograman fungsional.

Jika Anda sudah melakukan OO atau pemrograman fungsional, sebagian besar menggunakan include_once akan menjadi menunda di mana di stack Anda menemukan bug/kesalahan. Apakah Anda ingin tahu bahwa fungsi do_cool_stuff() tidak tersedia ketika Anda memanggilnya nanti, atau saat Anda mengharapkannya tersedia dengan memerlukan perpustakaan? Secara umum, yang terbaik adalah segera mengetahui jika sesuatu yang Anda butuhkan dan harapkan tidak tersedia, jadi gunakan require_once saja.

Atau, dalam OOP modern, cukup autoload kelas Anda saat digunakan.

Perbedaan antara fungsi _once dan tanpa fungsi _once: tanpa kode _once akan dimasukkan lagi sedangkan dengan fungsi _once PHP melacak file yang disertakan dan akan memasukkannya hanya sekali.

Perbedaan antara keharusan dan termasuk: Jika file yang diperlukan tidak ditemukan PHP akan memunculkan kesalahan fatal sedangkan untuk menyertakan hanya peringatan akan dipancarkan.

include() akan memberikan peringatan jika tidak dapat menyertakan file, tetapi sisa skrip akan berjalan.

require() akan melempar E_COMPILE_ERROR dan menghentikan skrip jika tidak dapat menyertakan file.

Fungsi include_once() dan require_once() tidak akan menyertakan file untuk kedua kalinya jika sudah disertakan.

Lihat halaman dokumentasi berikut:

  • termasuk
  • membutuhkan
  • include_once
  • require_once

Setiap kali Anda menggunakan require_once() dapat digunakan dalam file untuk memasukkan file lain ketika Anda membutuhkan file yang dipanggil hanya satu kali dalam file saat ini. Di sini, dalam contoh ini saya memiliki test1.php.

  

dan di file lain yang saya beri nama test2.php


saat Anda menonton m yang membutuhkan file test1 dua kali tetapi file akan menyertakan test1 satu kali dan untuk panggilan pada saat kedua ini akan diabaikan. Dan tanpa henti akan menampilkan output satu kali.

Setiap kali Anda menggunakan 'include_once () `dapat digunakan dalam file untuk memasukkan file lain saat Anda membutuhkan file yang dipanggil lebih dari sekali dalam file saat ini. Di sini, dalam contoh saya memiliki file bernama test3.php.

 

Dan di file lain yang saya beri nama test4.php


saat Anda menonton m termasuk file test3 akan menyertakan file satu kali tetapi menghentikan eksekusi lebih lanjut.

Gunakan "include" untuk templat PHP dapat digunakan kembali. Gunakan "wajib" untuk perpustakaan yang dibutuhkan.

"* _once" bagus, karena memeriksa apakah file sudah dimuat atau tidak, tetapi hanya masuk akal bagi saya di "require_once".

Perbedaannya terletak pada kesalahan yang dihasilkan perintah. Dengan require, file yang ingin Anda gunakan benar-benar diperlukan dan dengan demikian menghasilkan E_ERROR jika tidak ditemukan.

require() identik dengan include() kecuali jika gagal, ia juga akan menghasilkan kesalahan tingkat E_ERROR yang fatal.

include hanya menghasilkan kesalahan E_WARNING jika gagal yang lebih atau kurang diam.

Jadi gunakan jika file diperlukan untuk membuat kode yang tersisa berfungsi dan Anda ingin skrip gagal, file tidak tersedia.


Untuk *_once():

include_once() dapat digunakan dalam kasus di mana file yang sama mungkin dimasukkan dan dievaluasi lebih dari satu kali selama eksekusi skrip tertentu, jadi dalam kasus ini dapat membantu menghindari masalah seperti definisi ulang fungsi, penugasan kembali nilai variabel, dll.

Hal yang sama berlaku untuk require_once() tentu saja.


Referensi: require() , include_once()

Sebuah jawaban setelah 7 tahun untuk 2018

Pertanyaan ini diajukan tujuh tahun lalu, dan tidak ada jawaban yang memberikan bantuan praktis untuk pertanyaan itu. Dalam pemrograman PHP modern Anda terutama menggunakan required_once hanya sekali untuk memasukkan kelas autoloader Anda (sering komposer autoloader), dan itu akan memuat semua kelas dan fungsi Anda (file fungsi perlu ditambahkan secara eksplisit ke file composer.json ke tersedia di semua file lainnya). Jika karena alasan apa pun kelas Anda tidak dapat dimuat dari autoloader, Anda menggunakan require_once untuk memuatnya.

Saat ini Anda menggunakan require hanya untuk membagi sebagian besar file PHP. Ini terutama definisi array besar. Dalam kasus seperti itu, Anda hanya menggunakan require bukan require_once.

 'y'];

 

Jika file yang ingin Anda gunakan mengandung sesuatu yang dapat dieksekusi atau mendeklarasikan beberapa variabel, Anda hampir setiap saat harus menggunakan require, karena jika Anda menggunakan require_once di tempat lain kode Anda tidak akan dieksekusi dan/atau variabel Anda tidak akan dijalankan secara diam-diam, menyebabkan bug yang benar-benar sulit untuk ditentukan.

Tidak ada kasus penggunaan praktis untuk include dan include_once benar-benar.

Anda harus menyimpan definisi kelas dan fungsi dalam file.

Gunakan require_once() untuk memuat dependensi (kelas, fungsi, konstanta).

Gunakan require() untuk memuat file mirip template .

Gunakan include_once() untuk memuat dependensi opsional (kelas, fungsi, konstanta).

Gunakan include() untuk memuat file seperti templat opsional .

Dengan mengharuskan file harus ada, jika tidak maka kesalahan akan ditampilkan; sedangkan dengan menyertakan - jika file tidak ada maka halaman akan terus memuat.

Membutuhkan bagian-bagian penting, seperti otorisasi dan menyertakan semua yang lain.

Beragam adalah desain yang sangat buruk dan harus dihindari sama sekali. Jadi, * _cece tidak terlalu penting.

Sertakan / Membutuhkan Anda dapat memasukkan file yang sama lebih dari sekali juga:

membutuhkan () identik dengan menyertakan () kecuali pada kegagalan itu juga akan menghasilkan kesalahan tingkat E_COMPILE_ERROR fatal. Dengan kata lain, itu akan menghentikan skrip sedangkan include () hanya mengeluarkan peringatan (E_WARNING) yang memungkinkan skrip untuk melanjutkan.

require_once / include_once

identik dengan menyertakan/mengharuskan kecuali PHP akan memeriksa apakah file tersebut telah disertakan, dan jika demikian, tidak termasuk (memerlukan) lagi.

include() akan menghasilkan peringatan ketika tidak menemukan file, tetapi require_once() akan menghasilkan kesalahan fatal.

Hal lain adalah jika file disertakan sebelumnya. Maka require_once() tidak akan memasukkannya lagi.

Pada usia autoloader PSR-0 / PSR-4, mungkin sama sekali tidak perlu menggunakan pernyataan apa pun jika semua yang Anda butuhkan adalah membuat beberapa fungsi/kelas tersedia untuk kode Anda (tentu saja, Anda masih perlu require_once autoloader sendiri dalam file bootstrap Anda dan include templat jika Anda masih menggunakan PHP sebagai mesin templat).

Saya menggunakan fungsi seperti di bawah ini:

function doSomething() {
    require_once(xyz.php);
    ....
}

Ada nilai konstan yang dideklarasikan di xyz.php.

Saya harus memanggil fungsi doSomething () ini dari file skrip PHP lain.

Tapi saya mengamati perilaku saat memanggil fungsi ini dalam satu lingkaran, untuk iterasi pertama doSomething () mendapatkan nilai konstan dalam xyz.php, tetapi kemudian setiap iterasi doSomething() tidak bisa mendapatkan nilai konstan yang dinyatakan dalam xyz.php.

Saya memecahkan masalah saya dengan beralih dari require_once() ke include(), memperbarui doSomething() kode adalah sebagai berikut:

function doSomething() {
    include(xyz.php);
    ....
}

Sekarang setiap panggilan iterasi ke doSomething() mendapatkan nilai konstan yang didefinisikan dalam xyz.php.

Dari manual :

require() identik dengan include() kecuali jika gagal, ia juga akan menghasilkan kesalahan tingkat E_COMPILE_ERROR yang fatal. Dengan kata lain, itu akan menghentikan skrip sedangkan include() hanya mengeluarkan peringatan (E_WARNING) yang memungkinkan skrip untuk melanjutkan.

Hal yang sama berlaku untuk varian _once().

  1. Kapan seseorang harus menggunakan require atau include?

    Fungsi require dan include melakukan tugas yang sama, yaitu memasukkan dan mengevaluasi file yang ditentukan, tetapi perbedaannya adalah require akan menyebabkan kesalahan fatal ketika lokasi file yang ditentukan tidak valid atau untuk kesalahan apa pun sedangkan include akan menghasilkan peringatan dan melanjutkan eksekusi kode .

    Jadi, Anda dapat menggunakan fungsi require dalam kasus di mana file yang Anda coba sertakan adalah jantung dari sistem dan dapat menyebabkan dampak besar pada sisa kode dan Anda dapat menggunakan fungsi include ketika file Anda coba sertakan adalah file sederhana yang berisi beberapa kode kurang penting.

    Dan rekomendasi pribadi saya (untuk kode yang kurang penting) adalah pergi untuk fungsi require di mana-mana dalam kode Anda saat sedang dalam tahap pengembangan sehingga Anda dapat men-debug kode dan kemudian mengganti semua fungsi require dengan fungsi include sebelum memindahkannya ke produksi sehingga jika Anda melewatkan bug apa pun, itu tidak akan memengaruhi pengguna akhir dan sisa kode dieksekusi dengan benar ...

  2. Kapan seseorang harus menggunakan require_once atau require?

    Perbedaan mendasar antara require dan require_once adalah require_once akan memeriksa apakah file tersebut sudah termasuk atau tidak jika sudah disertakan maka tidak akan menyertakan file sedangkan fungsi require akan menyertakan file terlepas dari apakah file sudah disertakan atau belum.

    Jadi dalam kasus di mana Anda ingin memasukkan beberapa kode lagi dan lagi, gunakan fungsi require sedangkan jika Anda ingin memasukkan beberapa kode hanya sekali dalam kode Anda, gunakan require_once.

  1. Gunakan butuhkan fungsi saat Anda perlu memuat kelas, fungsi, atau ketergantungan apa pun.

  2. Gunakan include berfungsi saat Anda ingin memuat file bergaya template

Jika Anda masih bingung, cukup gunakan require_once untuk semua waktu.

Mereka semua adalah cara memasukkan file.

Membutuhkan berarti membutuhkannya. Require_once berarti akan membutuhkannya tetapi hanya membutuhkannya satu kali. Sertakan berarti akan menyertakan file tetapi tidak perlu melanjutkan.

Contoh:

Require 'filename'
Require_once 'filename'
Include 'filename'

Ada juga fungsi include_once yang termasuk file sekali.

Include_once 'filename'

Jangan gunakan huruf kapital di tempat saya miliki karena saya sedang mengetik dari ponsel saya.

satu hal yang saya perhatikan, ketika menggunakan include saya hanya dapat mengakses fungsi file yang disertakan dari file yang memasukkannya. Dengan require_once, saya bisa menjalankan fungsi itu dalam file required_once kedua.

juga: Saya sarankan menambahkan

if(file_exists($RequiredFile)){
    require_once($RequiredFile);
}else{
  die('Error: File Does Not Exist');
}

Karena ketika require_once membunuh halaman, kadang-kadang dapat menggemakan direktori file situs web Anda

Pada dasarnya, jika Anda memerlukan jalur yang salah, PHP melempar kesalahan fatal dan fungsi shutdown dipanggil, tetapi ketika Anda memasukkan jalur yang salah, PHP akan melanjutkan eksekusi, tetapi itu hanya tampilkan peringatan bahwa file tersebut tidak ada.

Dari Bahasa Inggris Kata require , PHP diberitahu bahwa eksekusi halaman atau file tergantung pada file yang diperlukan.

Dari pengalaman saya, itu normal untuk memerlukan file penting seperti file konfigurasi, kelas database dan utilitas penting lainnya.

Apakah perbedaan penggunaan fungsi include () dan require () di PHP?

Perintah require() pada dasarnya sama dengan perintah include(). Perbedaannya hanya terletak pada saat file yang disertakan tidak ditemukan, maka perintah-perintah selanjutnya tidak akan dijalankan.

Apa fungsi include dan require?

Fungsi PHP include() dan require() merupakan fungsi yang digunakan untuk menyertakan file php lain ke dalam suatu program PHP. Hal sangat yang sangat membantu proses pemrograman karena tidak perlu menulis program PHP secara berulang-ulang, cukup dalam satu file saja.

Apa itu require pada PHP?

Perintah include dan require digunakan untuk menyisipkan sebuah file php ke dalam file php lainnya. Fungsinya adalah untuk mengurangi upaya programmer dalam membuat script yang sama di setiap halaman.

Apa itu include dalam bahasa pemrograman?

Fungsi Include() Fungsi include() dalam PHP digunakan ketika kita ingin menyertakan suatu file kedalam suatu proses yang saat ini sedang berjalan. Dalam penggunaan fungsi include() ini dibutuhkan satu argumen yang akan menjadi string ke path file yang ingin kita sertakan.

Apa perbedaan include dan require?

include akan memproduksi error warning, yang mana kode program selanjutnya masih akan tetap dieksekusi. Sedangkan require akan memproduksi fatal error yang akan memberhentikan alur kerja program yang artinya kode program selanjutnya tidak akan pernah dieksekusi.

Apa perbedaan perintah include dan perintah require?

Perintah require() pada dasarnya sama dengan perintah include(). Perbedaannya hanya terletak pada saat file yang disertakan tidak ditemukan, maka perintah-perintah selanjutnya tidak akan dijalankan.

Apa itu require PHP?

Fungsi PHP include() dan require() merupakan fungsi yang digunakan untuk menyertakan file php lain ke dalam suatu program PHP. Hal sangat yang sangat membantu proses pemrograman karena tidak perlu menulis program PHP secara berulang-ulang, cukup dalam satu file saja.

Apa fungsi include pada HTML?

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.