__FILE__ represents the absolute path of the current file including the file name, dirname(__FILE__) represents the absolute path of the current file, basename(__FILE__) represents the file name of the current file, dirname(__FILE__)."/f/".basename(__FILE__) It means that the file name is dirname (__FILE__) in the f directory in the directory where the current file is located. require means including the file into this file.
The following is the detailed explanation:
1) The dirname(__FILE___) function returns the path where the script is located.
For example, the file b.php contains the following content:
$basedir = dirname(__FILE__);
?>
If b.php is A.php files in other directories require or include to quote.
The content of the variable $basedir is still the path to the folder where b.php is located.
Instead of becoming the directory where the a.php file is located.
2) dirname(__FILE__) generally returns a directory structure from the current directory where the file is located to the system root directory.
will not return the current file name.
dirname(__FILE__) may also return one. (Current directory)
[The reason is that the b.php file is in http.conf or the default WEB directory of the PHP configuration development environment.
For example, WEB_ROOT is: "C :/root/www/".]
The path to the b.php file is: "C:/root/www/b.php".
3) Usage tips,
If repeated once, the directory can be moved up a level:
For example: $d = dirname(dirname(__FILE__));
In fact, it is to give a directory to dirname() parameters. Because dirname() returns the last directory without \\ or /
, so when it is used repeatedly, it can be considered that dirname() treats the bottom directory as a file name. Return
to the upper-level directory of the current directory as usual. Repeat this to get its upper-level directory.
4) Contains files that get the upper-level directory
include(dirname(__FILE__).''/../filename