为什么is_dir()函数不适用于PHP中的网络路径


Why is_dir() function is not working for Network paths in PHP?

我正在检查我的代码,无论目录是否存在is_dir()

它适用于本地驱动器,但不适用于网络路径。

有人能帮我吗?

这是我的示例代码:

public function setXMLFilePath($filePath) {
    if(is_dir($filePath)) {
        $this->XMLFilePath = $filePath;
        $retVal = true;
    } else {
        $ratVal = false;
    }
    return $retVal;
}//setXMLFilePath

我的网络路径是这样的:

$filePath = '''Nas-heidi'heidi'FAS'Polish GameRobot'Export_Raffle'';

与文件相关的函数覆盖了一些协议,Windows网络模式不是其中之一。

同样值得注意的是,当您访问其中一个(外部)协议时,您不应该使用'''network_computer'network_folder'之类的短手协议,而应该使用完整的协议规范,如ftp:///http:///ssh://,如果存在Windows网络协议,它可能会有这样的标识符。

这可能是因为运行PHP脚本的帐户(可能是启动Apache服务的计数)对此类目录没有权限。