You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在XAMPP环境中正确引入PHP包含文件?

解决XAMPP中PHP包含文件路径问题

问题根源

你的代码里$_SERVER["DOCUMENT_ROOT"]指向的是XAMPP默认站点根目录C:/xampp/htdocs/,但实际includes/nav-blue.php应该是在php8子目录下(因为test.php存放在php8文件夹中),路径拼接后变成了根目录下的includes文件夹,自然找不到目标文件。

无需配置域名的解决方案

方案1:使用相对路径

直接基于当前test.php的位置编写相对路径,简单直接:

<?php include "./includes/nav-blue.php"; ?>

若includes文件夹与test.php同级,也可简化为:

<?php include "includes/nav-blue.php"; ?>

方案2:定义项目根常量

如果项目文件层级复杂,建议在入口文件(如test.php或公共配置文件)中定义项目根常量,避免路径混乱:

// 在test.php开头添加
define('PROJECT_ROOT', __DIR__); // __DIR__代表当前文件所在目录,即C:/xampp/htdocs/php8

// 调用包含文件
include PROJECT_ROOT . "/includes/nav-blue.php";

方案3:修改站点根目录(不推荐)

如果一定要沿用$_SERVER["DOCUMENT_ROOT"],可以修改Apache配置将php8设为站点根:

  1. 打开XAMPP控制面板,点击Apache的Config -> httpd.conf
  2. 找到DocumentRoot "C:/xampp/htdocs"和<Directory "C:/xampp/htdocs">,将路径改为C:/xampp/htdocs/php8
  3. 重启Apache服务
    修改后$_SERVER["DOCUMENT_ROOT"]会指向php8目录,原代码即可正常运行。但这种方法仅适合单项目测试,多项目场景下会引发冲突。

是否需要配置域名?

不需要。配置域名只是让访问地址更友好(比如用local.test替代localhost/php8),本质是修改Apache虚拟主机配置,和文件路径问题无直接关联。解决包含文件路径问题,用相对路径或常量方案更高效。

内容的提问来源于stack exchange,提问作者Seb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 17:15:55