ในภาษา PHP คำสั่ง include
และ require
ใช้ในการนำไฟล์อื่นมาใช้งานในไฟล์ PHP อื่นๆ โดยทั้งสองคำสั่งนี้มีความคล้ายคลึงกัน แต่มีความแตกต่างในการจัดการกับการล้มเหลว
include
คำสั่ง include
จะขึ้นคำเตือนว่าไฟล์ที่นำเข้ามาใช้มีปัญหา แต่จะยอมให้สคริปต์อื่นดำเนินการต่อไปได้
require
ในขณะที่คำสั่ง require จะขึ้นคำเตือนและหยุดการทำงานของสคริปต์ทันที ถ้าไฟล์ที่นำเข้ามาใช้งานไม่สามารถใช้งานได้
ดังนั้น หากคุณต้องการให้สคริปต์ดำเนินการต่อแม้ว่าไฟล์จะไม่สามารถนำมาใช้งานได้ คุณควรใช้คำสั่ง include
หากคุณต้องการให้สคริปต์หยุดและแสดงข้อผิดพลาดหากไม่สามารถนำไฟล์มาใช้งานได้ คุณควรใช้คำสั่ง require
Include One, Require Once
ทั้งคู่ include
และ require
มีการเรียกใช้ไฟล์ที่เหมือนกันหลายครั้ง แต่คำสั่ง include_once
และ require_once
จะเรียกใช้ไฟล์ที่เหมือนกันเพียงครั้งเดียว
usecase ที่ใช้กันบ่อยๆ ก็อย่างเช่น ทำ Layout
ตัวอย่าง
ซึ่งถ้าเราใช้ include
แทน require
ก็จะทำให้เกิดปัญหา คือ ถ้าเราเรียกไฟล์ header.php
มา 2 ครั้ง ก็จะเกิดปัญหา คือ มันจะเรียกไฟล์ header.php
มา 2 ครั้ง ซึ่งเราไม่ต้องการ