我的服务器上有三个文件:
foo.php
assets/bar.php
assets/qux.php
foo.php包括bar.php和bar.php包括qux.php。的代码foo.php如下所示:
<?php
include_once("assets/bar.php");
?>
应该怎么bar.php包含qux.php?它应该使用include("qux.php")orinclude("assets/qux.php")吗?
如果它们在同一个目录中,那么很简单:
include("qux.php")
假设您没有修改包含路径,include_once('qux.php')应该可以正常工作。
它实际上应该使用include("assets/qux.php"). 包含文件的路径是动态的;在这种情况下,它取决于foo.php。
如果bar.php要从多个目录中包含,最好使用绝对路径。
因此,有两种方法可以在 PHP 中“链式包含”文件:
include("assets/qux.php");
$ROOT = realpath($_SERVER["DOCUMENT_ROOT"]);
include("$ROOT/assets/qux.php");