我的基本目录中有一个配置文件,我正在尝试计算用于文件包含的目录的绝对路径。但是窗口在路径中使用反斜杠。
define( 'ABSOLUTE_PATH', dirname(__FILE__));
include( ABSOLUTE_PATH . "/includes/include.php" );
使用此方法返回此路径......
C:\xampp\htdocs\websites/includes/include.php
正如你所看到的,它是正斜杠和反斜杠的混合。
解决此问题的最佳方法是什么,还是有更好的方法可以找到绝对路径?
编辑:
我希望它使用正斜杠的原因是我将结果序列化以存储在数据库中。序列化时将删除反斜杠。 :)
答案 0 :(得分:6)
您应该使用DIRECTORY_SEPERATOR
常量:
include( ABSOLUTE_PATH . DIRECTORY_SEPARATOR . "includes" . DIRECTORY_SEPARATOR . "include.php" );
答案 1 :(得分:1)
在您的示例中不需要使用DIRECTORY_SEPARATOR。只要你使用正斜杠“/”,你就可以了。 Windows并不介意它,它最适合* nix操作系统。
请注意,DIRECTORY_SEPARATOR对于爆炸系统为您提供的路径等内容非常有用。
来自https://alanhogan.com/tips/php/directory-separator-not-necessary
答案 2 :(得分:0)
str_replace函数( “<强> \\ 强>”, “<强> / 强>”,目录名(文件强>));对我有用...(注意双重“\\”为scape第二个“\”)