我在学习PHP includes的相对路径时遇到问题。
试图在index.php中获取include语句以在_assets中的includes文件夹中查找footer.php需要两个文件夹。
从我在SO上读到的内容来看,我认为这将是:
include('../../_assets/includes/footer.php');
我宁愿使用绝对路径,但也无法实现。
找出了绝对的URL路径。
echo file_get_contents('http://www.mysite.com/_assets/includes/footer.php');
工作非常完美。
要使用绝对路径,我建议您定义一个指向文档根的常量,例如:
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服务器