Hướng dẫn dùng r include trong PHP

  • Hàm include()
  • Hàm require()
  • Hàm require_once()

Trong PHP các đoạn code khác nhau bạn có thể bố trí ở nhiều file php khác nhau như là một thư viện, rồi bạn gộp chúng lại trong một file PHP khi Server chạy. Có hai hàm để bạn làm điều này đó là include()require(). Điều này giúp bạn có thể xây dựng các thư viện chức năng để sử dụng lại ở nhiều file, hoặc giúp bạn dàn trang như là tạo phần header, footer, sidebar ... trên các file riêng rồi gộp vào trang.

Hàm include()

Hàm include() đọc nội dung của file tham số và copy vào file gọi hàm include(). Giả sử bạn tạo một menu chung cho các trang. Thì bạn có thể tạo file menu.php với nội dung như sau:

Home -   
Lập trình PHP -  
HTML -   
Liên hệ 

Với file menu.php này bạn có thể gộp nó vào các file khác, ví dụ bạn tạo file index.php:

 
    
        
        

Đây là ví dụ về lệnh include()!

Chạy file trên sẽ có kết quả mà nội dung của menu.php đã được gộp vào:

Home - Lập trình PHP - HTML - Liên hệ

Đây là ví dụ về lệnh include()!

Hàm require()

Tác dụng của hàm require() cũng tương tự như include() tức là đọc file bên ngoài và chèn vào vị trí gọi hàm require(), tuy nhiên có sự khác biệt đó là nếu file gộp không tồn tại thì include() đưa ra báo lỗi và tiếp tục chạy script, còn với require() nếu file không tồn tại thì script sẽ bị dừng ngay lập tức. Bạn hãy trở lại ví dụ trên và sử dụng require() để kiểm tra.

Hàm require_once()

Hàm require_once() hoạt động giống với require() với một sự khác biệt là require_once() sẽ kiểm tra xem file đã từng được load vào hay chưa, nếu đã load thì không làm gì nếu chưa load thì sẽ gọi require(), điều này để đảm bảo thư viện hàm không bị mở chèn nhiều lần vào.

  • Hàm include()
  • Hàm require()
  • Hàm require_once()

Trong PHP các đoạn code khác nhau bạn có thể bố trí ở nhiều file php khác nhau như là một thư viện, rồi bạn gộp chúng lại trong một file PHP khi Server chạy. Có hai hàm để bạn làm điều này đó là include()require(). Điều này giúp bạn có thể xây dựng các thư viện chức năng để sử dụng lại ở nhiều file, hoặc giúp bạn dàn trang như là tạo phần header, footer, sidebar ... trên các file riêng rồi gộp vào trang.

Hàm include()

Hàm include() đọc nội dung của file tham số và copy vào file gọi hàm include(). Giả sử bạn tạo một menu chung cho các trang. Thì bạn có thể tạo file menu.php với nội dung như sau:

Home -   
Lập trình PHP -  
HTML -   
Liên hệ 

Với file menu.php này bạn có thể gộp nó vào các file khác, ví dụ bạn tạo file index.php:

 
    
        
        

Đây là ví dụ về lệnh include()!

Chạy file trên sẽ có kết quả mà nội dung của menu.php đã được gộp vào:

Home - Lập trình PHP - HTML - Liên hệ

Đây là ví dụ về lệnh include()!

Hàm require()

Tác dụng của hàm require() cũng tương tự như include() tức là đọc file bên ngoài và chèn vào vị trí gọi hàm require(), tuy nhiên có sự khác biệt đó là nếu file gộp không tồn tại thì include() đưa ra báo lỗi và tiếp tục chạy script, còn với require() nếu file không tồn tại thì script sẽ bị dừng ngay lập tức. Bạn hãy trở lại ví dụ trên và sử dụng require() để kiểm tra.

Hàm require_once()

Hàm require_once() hoạt động giống với require() với một sự khác biệt là require_once() sẽ kiểm tra xem file đã từng được load vào hay chưa, nếu đã load thì không làm gì nếu chưa load thì sẽ gọi require(), điều này để đảm bảo thư viện hàm không bị mở chèn nhiều lần vào.



Câu lệnh include và require trong PHP được sử dụng để chèn nội dung của file php này vào file php khác.

Việc chèn nội dung file là rất hữu ích khi bạn muốn chèn các dòng code php, html giống nhau vào nhiều trang khác nhau.

Câu lệnh include và require là giống nhau, trừ trường hợp bị lỗi:

  • require: sẽ tạo ra lỗi nghiêm trọng (E_COMPILE_ERROR) và dừng tập lệnh.
  • include: sẽ chỉ tạo cảnh báo (E_WARNING) và tập lệnh sẽ tiếp tục.

Vì vậy, nếu bạn muốn chương trình tiếp tục được thực thi và hiển thị đến người dùng, ngay cả khi file được chèn vào bị thiếu, hãy sử dụng câu lệnh include. Nếu không, trong trường hợp FrameWork, CMS hoặc ứng dụng PHP phức tạp, hãy luôn sử dụng câu lệnh require để chèn một file là bắt buộc tới luồng thực thi. Điều này sẽ giúp tránh ảnh hưởng đến tính bảo mật và tính toàn vẹn của ứng dụng.

Include các file tiết kiệm rất nhiều công sức. Điều này có nghĩa là bạn có thể tạo file header.php, footer.php hoặc menu.php cho tất cả các trang web của mình. Sau đó, khi cần cập nhật phần tiêu để của trang, bạn chỉ cần cập nhật file header.php.


Cú pháp

include 'filename';

hoặc

require 'filename';



Welcome to VietTuts.Vn!

Some text.

Some more text.

Kết quả:

Ví dụ 2

Giả sử chúng ta có một tệp menu chuẩn được gọi là "menu.php":

Home -
HTML -
CSS -
JavaScript -
PHP';
?>

Sử dụng câu lệnh include để chèn menu và footer vào trang page2.php:





Welcome to VietTuts.Vn!

Some text.

Some more text.

Kết quả:



Ví dụ 3

Giả sử chúng ta có một "cars.php", với một số biến được định nghĩa:

Sử dụng câu lệnh include để chèn file trên vào trang page3.php:



Welcome to VietTuts.Vn!

Kết quả:


Include vs Require

Câu lệnh require cũng được sử dụng để bao gồm một file vào mã PHP.

Tuy nhiên, có một sự khác biệt lớn giữa include và require, khi một file được chèn bằng lệnh include và PHP không thể tìm thấy nó, tập lệnh sẽ tiếp tục thực thi:



Welcome to VietTuts.Vn!

Kết quả:

Nếu chúng ta làm ví dụ tương tự bằng cách sử dụng lệnh require, câu lệnh echo sẽ không được thực thi vì việc thực thi tập lệnh chết sau khi lệnh require trả về một lỗi nghiêm trọng:



Welcome to VietTuts.Vn!

Kết quả: