There are two ways to reference files: require and include.
The usage method of require is as require("file.php"); . This function is usually placed at the front of the PHP program. Before the PHP program is executed, it will first read in the file specified by require and make it a part of the PHP program web page. Commonly used functions can also be introduced into web pages in this way.
Include is used like include("file.php"); . This function is generally placed in the processing part of flow control. The PHP program web page only reads the include file when it reads it. In this way, the process of program execution can be simplified.
The _once suffix means that the loaded ones are not loaded
1. Report an error
When include introduces a file, if an error is encountered, a prompt will be given and the code below will continue to run
When require imports a file, if an error is encountered, a prompt will be given and the code below will stop running
Note: Before PHP 4.3.5, syntax errors in include files did not cause the program to stop, but they will from this version onwards.
2. Conditional reference
include() and require() have the same function, but there are some differences in usage. include() is a conditional inclusion function, while require() is an unconditional inclusion function,
For example, in the following example, if the variable $somg is true, the file somefile.php will be included:
if($some){
include 'somefile.php';
}
But no matter what value $some takes, the following code will include the file somefile.php into the file:
if($something){
require 'somefile.php';
}
The following example fully illustrates the difference between these two functions
$i = 1;
while ($i < 3) {
require "somefile.$i.php";
$i++;
}
It can be seen from the above code that the program will include the same file every time it loops. Obviously this is not what we want. It can be seen that this code hopes that every time it loops,
To include different files, if you want to complete this function, you can only use the function include()
$i = 1;
while ($i < 3) {
include "somefile.$i.php";
$i++;
}
3. When requiring relative paths
When A refers to B, and B refers to another file C, if the path of C is a relative path, it is relative to the path of A, not relative to B'
4. The require_once() statement includes and runs the specified file during script execution. This behavior is similar to the require() statement, the only difference is that if the code in the file is already included, it will not be included again.
The include_once() statement includes and runs the specified file during script execution. This behavior is similar to the include() statement, the only difference is that if the code in the file is already included, it will not be included again. As the name of this statement implies, it will only be included once.
5..File reference method
include has a return value, but require does not
$login = include(’test.php’);
if(!empty($login)){
echo "File included successfully";
}else{
echo "File inclusion failed";
}
Files that need to be referenced when include() is executed must be read and evaluated every time,
The file that needs to be referenced when require() is executed is only processed once (in fact, the content of the file that needs to be referenced during execution replaces the require() statement)
It can be seen that if there is code that contains one of these instructions and code that may be executed multiple times, it is more efficient to use require(),
If a different file is read each time the code is executed or there is a loop that iterates through a set of files, use include(),
You can set a variable for the file name you want to include. Use this variable when the parameter is include()
Excerpted from 〃Style ひぐ