我在我的基本目录中有一个配置文件,我正在尝试计算用于文件包含的目录的绝对路径。但是,windows在路径中使用了反斜杠。
define( 'ABSOLUTE_PATH', dirname(__FILE__));
include( ABSOLUTE_PATH . "/includes/include.php" );使用此方法,它将返回以下路径...
C:\xampp\htdocs\websites/includes/include.php正如您所看到的,它是正斜杠和反斜杠的混合。
解决这个问题的最佳方法是什么,或者有没有更好的方法可以找到绝对路径?
编辑:
我希望它使用正斜杠的原因是我正在序列化要存储在数据库中的结果。反斜杠在序列化时会被删除。:)
发布于 2014-07-15 07:57:09
您应该使用DIRECTORY_SEPARATOR常量:
include( ABSOLUTE_PATH . DIRECTORY_SEPARATOR . "includes" . DIRECTORY_SEPARATOR . "include.php" );发布于 2018-02-08 16:54:24
在您的示例中,不需要使用DIRECTORY_SEPARATOR。只要使用正斜杠“/”,就可以了。Windows不会介意这一点,它最适合*nix操作系统。
请注意,DIRECTORY_SEPARATOR对于分解系统给出的路径之类的事情很有用。
来自https://alanhogan.com/tips/php/directory-separator-not-necessary
发布于 2015-10-25 09:26:04
str_replace("\","/",dirname(FILE));为我工作...(注:用于第二个的scape "\"“\”)
https://stackoverflow.com/questions/24747860
复制相似问题