Phân biệt include/include_once, require/require_once trong PHP
1. Đặt vấn đề
- Việc xây dựng một trang web bằng ngôn ngữ PHP thì ta phải sử dụng rất nhiều mã code khác nhau và có thể lên đến hàng trăm, hàng ngàn dòng lệnh, nên việc code tất một file PHP (.php) duy nhất thì rất là không nên bởi rất khó để nâng cấp và bảo trì nó. Để giải quyết vấn đề này thì ở hầu hết các ngôn ngữ lập trình cho phép ta phân chia mã code thành nhiều file khác nhau và muốn dùng file nào thì chỉ việc khai báo là được.
- Ví dụ với C++ hay C# thì chúng ta có lệnh
#include
dùng để import các thư viện dùng chung vào file đang viết và sử dụng, vậy trong PHP cũng có một lệnh tương tự đó là lệnhrequire
,require_once
,include
vàinclude_once
. - Vậy các câu lệnh đó được sử dụng như nào và chúng có đặc điểm gì?
2. include/include_once
- Lệnh include và include_once dùng để import một file PHP 1 vào một file PHP 2 với mục đích giúp file PHP 2 có thể sử dụng được mọi thứ trong file PHP 1.
- Ví dụ:
-
- Viết một trang chủ, đặt tên là index.php
- Viết một trang test.php với nội dung:
<a href="/index.php">Chào mừng đến với Tìm Ở Đây</a> Đây là nội dung của file test.php <a href="/phP.php">PHP</a> <a href="/mysqL.php">MySQL</a>
- File index.php có nội dung:
<? php include test.php ?>
- Kết quả thu được khi mở file index.php là:
-
3. require/require_once
- Câu lệnh require có hai kiểu, require và require_once.
- Câu lệnh require/ require_once được sử dụng để bao gồm tệp.
- require_once bị bỏ qua nếu tệp bắt buộc đã được thêm bởi bất kỳ câu lệnh nào trong bốn câu lệnh include.
- Về tính chất và chức năng giống như
include
4.Khác nhau giữa require và include
Include | Require |
---|---|
Đưa ra cảnh báo khi xảy ra lỗi | Không đưa ra cảnh báo |
Việc thực thi tập lệnh tiếp tục khi xảy ra lỗi | Việc thực thi tập lệnh sẽ dừng lại khi xảy ra lỗi. |
- Nếu khi import một file bằng lệnh require thì nếu chương trình bị lỗi thì lập tức trình biên dịch sẽ dừng và xuất ra thông báo lỗi. Còn nếu sử dụng lệnh include thì đó chỉ là một cảnh báo nên chương trình vẫn chạy cho đến cuối chương trình.
- Tóm lại, nên sử dụng câu lệnh include để khi xảy ra lỗi, việc thực thi tập lệnh vẫn được tiếp tục.