Để xây dựng một trang web bằng PHP thì đòi hỏi ban 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 line, vì vậy nếu chúng ta chỉ code nó trong một file PHP duy nhất thì rất là tệ hại bởi rất khó để nâng cấp và bảo trì chúng. Với nhược điểm này hầu hết các ngôn ngữ lập trình cho phép chúng 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ới C++ hay C# thì chúng ta có lệnh #include dùng để import các thư viện vào một file và sử dụng, vậy trong PHP cũng có một lệnh tương tự đó là lệnh require, require_once, include và include_once.
Trong bài này mình sẽ hướng dẫn các bạn cách sử dụng và phân biệt khi nào thì nên sử dụng từng lệnh cụ thể nhé.
Trước tiên bạn tạo cho tôi 2 file đó là file index.php và file import.php nhé.
1. Lệnh require – require_once – include – include_once
Lệnh require, require_once, include và include_once dùng để import một file PHP A vào một file PHP B với mục đích giúp file PHP B có thể sử dụng được các thư viện trong file PHP A.
Ví dụ bạn đang xây dựng một ứng dụng quản lý sinh viên, lúc này bạn cần một số hàm kết nối và xử lý dữ liệu cho sinh viên thì bạn sẽ đặt nó trong một file student.php riêng và bất kì một file khác muốn sử dụng thì chỉ cần import file student.php đó vào.
Về cú pháp thì cả bốn lệnh đều có chung cú pháp như sau:
| 1 2 3 4 | require"/path.php";require_once"/path.php";include"/path.php";include_once"/path.php"; | 
Trong đó path.php là đường dẫn tuyệt đối nhé các bạn, nghĩa là path là một đường dẫn trên Server chứ không phải trên trình duyệt browser (nghĩa là đường dẫn tương đối).
Bây giờ chúng ta cùng tìm hiểu cụ thể hơn về cách sử dụng nhé.
Lệnh require:
Dùng để import một file PHP khác vào file hiện tại, lúc này file hiện tại có thể sử dụng mọi tài nguyên của file import đó.
Ví dụ: Bạn mở file import.php lên và nhập vào nội dung sau.
| 1 2 3 4 | functionshow_message(){    echo'Đây là hàm show_message trong file import.php';} | 
Tiếp theo bạn vào file index.php nhập nội dung sau:
| 1 2 3 4 5 | // Import file import.phprequire"/import.php";// Sử dụng hàm show_message trong file import.phpshow_message(); | 
Chạy file index.php lên bạn sẽ thấy nó xuất ra câu thông báo “Đây là hàm show_message trong file import.php“.
Nếu bạn cố ý require hai lần cùng một file thì lập tức sẽ bị thông báo lỗi vì hàm show_message() đã được định nghĩa. Lý do là khi ta require hai lần thì lần thứ hai đã bị đụng tên hàm. Bây giờ bạn thay đổi nội dung file index.php như sau:
| 1 2 3 4 5 6 | // Import file import.phprequire"require.php";require"require.php";// Sử dụng hàm show_message trong file import.phpshow_message(); | 
Lập tức sẽ bị thông báo lỗi như hình dưới đây.
Lệnh require_once:
Lệnh này có chức năng chẳng khác gì lệnh require, tuy nhiên điểm khác biệt đó là lệnh require_once chỉ import đúng một lần, nghĩa là khi bạn sử dụng hai lệnh require_once cùng một file thì ở lệnh require_once thứ hai nó sẽ thấy là đã xử lý rồi nên nó sẽ không thực thi nữa.
Ví dụ: Bạn thay đổi nội dung file index.php như sau
| 1 2 3 4 5 6 | // Import file import.phprequire_once"/import.php";require_once"/import.php";// Sử dụng hàm show_message trong file import.phpshow_message(); | 
Chạy lên chương trình vẫn hoạt động bình thường.
Lệnh include:
Công dụng và tính chất giống như lênh require.
Ví dụ:
| 1 2 3 4 5 | // Import file import.phpinclude"/import.php";// Sử dụng hàm show_message trong file import.phpshow_message(); | 
Tương tự như require. Tuy nhiên nếu bạn cố ý include hai lần thì sẽ KHÔNG xuất hiện lỗi mà đó chỉ là một cảnh báo, đây chính là sự khác nhau giữa hai lệnh này.
Lệnh include_once:
Công dụng và tính chất giống với lệnh require_once.
Ví dụ:
| 1 2 3 4 5 | // Import file import.phpinclude_once"/import.php";// Sử dụng hàm show_message trong file import.phpshow_message(); | 
2. Sự khác nhau giữa require và include
Chúng ta sẽ nói về sự khác nhau giữa require và include, require_once và include_once luôn. Tuy nhiên mình sẽ giải thích cặp đầu tiên đó là require và include thôi, cặp còn lại sẽ tương tự nhé các bạn.
Giống nhau giữa require và include:
Cả hai lệnh đều có nhiệm vụ import một file PHP vào một file PHP khác.
Khác nhau giữa require và include:
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.
3. Lời kết
Qua bài này mình đã giới thiệu cách sử dụng các lệnh require, require_once, include và include_once trong PHP, đồng thời mình cũng nói sự khác nhau giữa các cặp require và include trong PHP. Hy vọng qua bài này bạn sẽ hiểu rõ hơn những cặp lệnh dùng để chèn file trong PHP.
Theo:freetuts.net
 
                                       



 
							 
							 
							 
							 
							 
							 
							 
							 
							 
							 
							 
							 
							 
															
							 
                             
             
            
 Vietnamese
 Vietnamese Afrikaans
 Afrikaans Albanian
 Albanian Amharic
 Amharic Arabic
 Arabic Armenian
 Armenian Azerbaijani
 Azerbaijani Basque
 Basque Belarusian
 Belarusian Bengali
 Bengali Bosnian
 Bosnian Bulgarian
 Bulgarian Catalan
 Catalan Cebuano
 Cebuano Chichewa
 Chichewa Chinese (Simplified)
 Chinese (Simplified) Chinese (Traditional)
 Chinese (Traditional) Corsican
 Corsican Croatian
 Croatian Czech
 Czech Danish
 Danish Dutch
 Dutch English
 English Esperanto
 Esperanto Estonian
 Estonian Filipino
 Filipino Finnish
 Finnish French
 French Frisian
 Frisian Galician
 Galician Haitian Creole
 Haitian Creole Georgian
 Georgian German
 German Greek
 Greek Gujarati
 Gujarati Hausa
 Hausa Hawaiian
 Hawaiian Hebrew
 Hebrew Hindi
 Hindi Hmong
 Hmong Hungarian
 Hungarian Icelandic
 Icelandic Igbo
 Igbo Indonesian
 Indonesian Irish
 Irish Italian
 Italian Japanese
 Japanese Javanese
 Javanese Kannada
 Kannada Kazakh
 Kazakh Khmer
 Khmer Korean
 Korean Kurdish (Kurmanji)
 Kurdish (Kurmanji) Kyrgyz
 Kyrgyz Lao
 Lao Latin
 Latin Latvian
 Latvian Lithuanian
 Lithuanian Luxembourgish
 Luxembourgish Macedonian
 Macedonian Malagasy
 Malagasy Malay
 Malay Malayalam
 Malayalam Maltese
 Maltese Maori
 Maori Marathi
 Marathi Mongolian
 Mongolian Myanmar (Burmese)
 Myanmar (Burmese) Nepali
 Nepali Norwegian
 Norwegian Pashto
 Pashto Persian
 Persian Polish
 Polish Portuguese
 Portuguese Punjabi
 Punjabi Romanian
 Romanian Russian
 Russian Samoan
 Samoan Scottish Gaelic
 Scottish Gaelic Sinhala
 Sinhala Serbian
 Serbian Sesotho
 Sesotho Shona
 Shona Sindhi
 Sindhi Slovenian
 Slovenian Slovak
 Slovak Somali
 Somali Spanish
 Spanish Sundanese
 Sundanese Swahili
 Swahili Swedish
 Swedish Tajik
 Tajik Tamil
 Tamil Telugu
 Telugu Thai
 Thai Turkish
 Turkish Ukrainian
 Ukrainian Urdu
 Urdu Uzbek
 Uzbek Welsh
 Welsh Xhosa
 Xhosa Yiddish
 Yiddish Yoruba
 Yoruba Zulu
 Zulu