我在学习PHP包含的相对路径方面遇到了麻烦。
尝试在index.php中获取include语句,以便在_assets两个文件夹中的includes文件夹中找到footer.php。
从我在这里读到的SO,我认为会是:
include('../../_assets/includes/footer.php');
我宁愿使用绝对路径,但也无法使用它。
找出绝对网址路径。
echo file_get_contents('http://www.mysite.com/_assets/includes/footer.php');
完美无缺。
答案 0 :(得分:2)
要使用绝对路径,我建议您定义一个指向文档根目录的常量,例如:
define('PATH_SITE', '/path/to/www/');
或在Windows上:
define('PATH_SITE', 'C:\\path\\to\\www\\');
随后您使用该路径获取正确的包含:
include_once(PATH_SITE . 'assets/whatever.php');
或者你可以使用内置的PHP变量$_SERVER['DOCUMENT_ROOT']
,但我发现它在Windows服务器上是不稳定的