在处理文件时是否确实需要使用正确的目录分隔符


Is using the proper directory separator when handling files really necessary?

我看到很多人做这样的事情:

define('DS', DIRECTORY_SEPARATOR);
include __DIR__ . DS . 'path' . DS . 'to' . DS . 'file.php';

并且想知道如果在使用 / 而不是 ' 时在 Windows 上一切正常,他们为什么要这样做。在百万分之一的情况下,这实际上是必要的?

这些常量存在的原因是为了向后兼容性、可移植性和可重用性。

底层的 curcumstances 可能会改变(也许你在 Windows 机器上开发,但你的服务器是基于 Centos?或 Debian 的,在这种情况下,目录分隔符是不同的。

或者也许发布了一些新标准,将分隔符更改为更统一的字符。在这种情况下,您需要返回到引用目录的每个实例并更改分隔符(上帝愿意PHP删除一些魔法)。

对一遍又一遍重复使用的东西有一个参考点是一种很好的编码习惯,这可能会被改变。