Include và Require trong PHP là hai hàm cơ bản được sử dụng để nhúng source code từ các file khác vào trong một file PHP hiện tại. Các hàm này gần như không thể thiếu trong các source code PHP, tối ưu hoá code và dễ theo dõi hơn. Trong bài biết này, hãy cùng Vietnix tìm hiểu về 2 hàm này là gì, ảnh hưởng thực thi code ra sao, những điểm khác nhau cũng như cách sử dụng hai hàm này thông qua các ví dụ của bài viết Include và Require trong PHP dưới đây.
Hàm Include và Require trong PHP
PHP cho phép người dùng tạo ra nhiều hàm và các phần tử khác nhau được sử dụng nhiều lần trong nhiều file. Viết script cho cùng một chức năng trong nhiều file là một nhiệm vụ tốn nhiều công sức và sẽ tiêu tốn nhiều thời gian cũng như ảnh hưởng đến hiệu suất việc thực thi code.
Điều này có thể tránh được nếu bạn tuân theo và sử dụng khái niệm “include file”, hàm này giúp bạn nhúng các file khác nhau bao gồm văn bản hoặc code vào một chương trình duy nhất giúp tiết kiệm công sức viết nhiều lần hàm hoặc code đầy đủ. Điều này cũng cung cấp một lợi thế khác. Nếu bạn muốn thay đổi bất kỳ mã nào thì thay vì sửa nó trong tất cả các file, bạn chỉ cần sửa file nguồn và tất cả các code sẽ tự động được thay đổi. Có 2 hàm giúp người dùng nhúng source code vào trong file chính:
- Hàm
include()
- Hàm
require()
Mọi người cũng xem:
PHP include()
Hàm này dùng để sao chép tất cả nội dung một file được gọi trong hàm, text wise vào file mà nó được gọi. Việc này sẽ xảy ra trước khi thực thi code.
Ví dụ:
Giả định người dùng có 1 file even.php thực thi chức năng in ra màn hình thông báo:
<?php
// File to be included
echo "Hello Vietnix";
?>
Tiếp theo dụng hàm để nhúng file vào file PHP khác tên là index.php, bạn sẽ thấy nội dung cả file được hiển thị:
<?php
include("even.php");
echo "<br>Above File is Included"
?>
Output như sau:
PHP require()
Hàm require()
hoạt động giống như hàm include()
. Hàm này cũng lấy file được yêu cầu, sao chép toàn bộ nội dung vào file mà hàm require()
đã gọi. Bạn vẫn sẽ kiểm tra với file even.php nhưng dùng hàm require()
và gọi file index.php.
Ví dụ:
<?php
require("even.php");
echo "<br>Above File is Required"
?>
Output như sau:
Điểm khác nhau giữa hàm Include và Require trong PHP
Dù cơ chế hoạt động là như nhau nhưng cả hai trong quá trình thực thi và có phát sinh bất kỳ lỗi fatal nào, bạn sẽ thấy sự khác biệt giữa chúng.
Đối với hàm include()
, hệ thống sẽ gửi cảnh báo việc file bị thiếu và file index.php vẫn được thực thi.
Tuy nhiên, trong tình huống hàm require()
, ngoài việc cảnh báo bị thiếu file từ hệ thống, output cũng báo lỗi fatal và sẽ không hiện thêm nội dung nào khác từ file đang thực thi.
Đây là sự khác biệt duy nhất. Điều này cũng cho thấy rằng hàm require()
tốt hơn hàm include()
vì file script sẽ không tiếp tục thực thi nếu file được yêu cầu bị thiếu hoặc một lỗi tương tự được tạo ra.
Lời kết
Vietnix hy vọng nội dung bài viết trên đã giúp bạn hiểu rõ hơn về Include và Require trong PHP. Ngoài ra, bạn cũng có thể tham khảo thêm các bài viết khác tại vietnix.vn để hiểu hơn về lập trình, chúc bạn thành công!