我有一个变量 $path ,其中包含 Windows 网络上文件的完整路径(例如R:\somedir\otherdir\lastdir\some.file.ext
)
当我使用:
$location = dirname($path);
这里$location
只记录值.
我究竟做错了什么?
您使用了错误的斜线。而不是使用反斜杠\
使用普通斜杠/
文件路径和 URI 是不同的。\ 在 Windows 文件路径中是正确的,而 / 在 URI 中是正确的。
所以这个文件路径:C:\Documents\Foo 转换为这个 URI:file:///C:/Documents/Foo
从 php 文档:
如果路径中没有斜杠,则返回一个点('.'),表示当前目录。否则,返回的字符串是删除任何尾随 /component 的路径。
这意味着问题在于您的斜线是错误的。
Replace \
with /
and try again
考虑使用正斜杠“/”。