【发布时间】:2013-06-10 10:35:51
【问题描述】:
问题:
dirname() 和 realpath() 都返回带有 正确 斜线的路径,具体取决于您运行脚本的操作系统。
我想以可移植的方式(使用 PHP API)创建路径,因此我不必担心\ 或/ 斜线。
realpath() 如果路径不存在则返回FALSE。所以,这不是一个选择:
define("MY_PATH", realpath(__DIR__."/myNewDirToCreate");
在其他不同的情况下,dirname() 将不是以下选项的选项:
define("MY_FILE", "I/should/use/an/abstract/path/definition.file");
因为它会返回 parten 目录,而不是文件的路径。我可以自己解决问题,使用regex 或string 替换。但是PHP 是一个跨平台的环境,我肯定在大量的 PHP 文档中遗漏了一些功能。
问题:
- 如果可能,无论脚本在什么操作系统上运行使用
PHP API,我如何创建路径?例如path("no/matter/what/os/are/you/running/this.file\or\what\slashes\you\are\using");
【问题讨论】:
-
你不应该关心正斜杠和反斜杠,它们都可以工作。你所要做的就是使用 dirname() 来获取基本路径,然后,从那里,在任何地方都使用正斜杠,它会很好,我保证 :)
-
@Twisted1919 你是对的。我的代码中的错误误导我错误是斜杠的混合。