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

PHP中include './'与'../'的区别及./路径含义疑问

PHP中./路径的作用及使用场景

核心结论

./(Windows系统可写为.\)代表当前工作目录的本级目录,和用于向上跳转一级的../完全不同——它不会改变目录层级,就是明确指定要查找「当前目录下的目标文件」。

同目录文件加./的原因

你疑惑明明直接写文件名就能引用同目录文件,为何要加./,这和PHP的文件查找规则直接相关:

  • 直接使用include('script.php'):PHP会先在当前工作目录查找文件,若找不到,会依次去php.ini配置的include_path路径中查找匹配文件。
  • 使用include('./script.php'):PHP只会在当前工作目录下查找该文件,不会去include_path中搜索。

加./的本质是强制限定查找范围,避免因include_path中存在同名文件而加载错误的脚本,确保精准加载当前目录下的目标文件。

你的报错原因复盘

你的文件结构中,main.php位于root/directory/目录下,程序运行时的当前工作目录大概率为root/directory/(例如直接执行该目录下的main.php):

  • include('./script.php')会直接查找root/directory/script.php,你删除该文件后自然无法找到,导致报错。
  • 若要加载根目录root/下的script.php,需使用include('../script.php'),这才是向上跳转一级目录的正确写法。

额外说明

Windows系统的路径分隔符是\,类Unix系统(Linux/Mac)是/,但PHP对两种分隔符均兼容,因此.\和./在PHP中作用完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 02:25:17