带有相对路径的PHP-INCLUDE()或REQUIRED()在Windows上不起作用,即使在追加__DIR__时也是如此

2022-05-18 00:00:00 relative-path include php require

我在这里读到有关在相对路径中使用Include()或Required()时出现的问题,我看到的所有解决方案都是追加目录

我目前在Windows上工作,尽管错误消息显示目录的当前值,但相对路径似乎是作为字符串添加的,而不是上一级,例如:

include(__DIR__ . "..\another_folder\file_2.php");
产生以下错误: 警告:include(C:xampphtdocsmain_folder..another_folderfile_2.php)[Function.Include]:无法打开流:

中没有这样的文件或目录

知道发生了什么事吗?


解决方案

您需要在目录名称后面添加

include(__DIR__ . "\..\another_folder\file_2.php");

这将使路径

C:xampphtdocsmain_folder..another_folderfile_2.php

而不是

C:xampphtdocsmain_folder..another_folderfile_2.php

另外,为了便于移植,建议使用/而不是,后者可以在所有平台上运行,包括Windows:

include(__DIR__ . "/../another_folder/file_2.php");

相关文章