我是Windows用户,这是我的示例代码:
<?php echo "Current directory is: " . realpath("."); ?>
输出:当前目录是:C:\ wamp \ www \ test
实际上,我想在WAMP上以Unix风格返回path
即C:/ wamp / www / test
我怎样才能在WAMP中做到这一点?
在WAMP中这样做的设置是什么?
DIRECTORY_SEPARATOR将返回你/在Unix中, \在Windows中。
不知道这是否回答你的问题,但。
是否有任何理由,你希望它在unix风格输出path? 您将无法访问path。
如果你真的想要它,你可以使用str_replace ,
实际上,我想在WAMP上以Unix风格返回path
即C:/ wamp / www / test
这样做没有任何意义 – 因为这不是一个真实的或有效的path。
以前关于PATH_SEPERATOR的回答是错误的。 这会给你一个分号。 你想使用DIRECTORY_SEPARATOR 。
Unixpath不是以字母开头,而是以“/”开头。 将Windowspath转换为Unixpath可能没有任何意义,但是仍然可以在PHP中使用str_replace()或preg_replace()来删除该字母,并将反斜杠更改为斜杠。
无法在全局范围内更改反斜杠:这些function使用操作系统function。 最好的方法就是strtr(realpath('.'), '\\', '/') ,但是我不认为这很有用。 如果explode() (或其他)与斜杠混淆 – 使用正则expression式: split('\\/', realpath('.'))
请注意, strtr()在replace单个字符比其他人build议的str_replace()更快。