PHP:访问网络目录时出错


PHP: Error Accessing Network Directory

Helo在那里,

我正试图编写一个应用程序来读取网络上映射的文件夹的内容,但我就是不知道自己做错了什么。目标服务器没有Apache、IIS或类似的东西,但我认为这无关紧要,对吧?我可以使用Windows资源管理器在文件夹中导航,而不会出现任何问题。

不管怎样,这是我的代码:

<?php
error_reporting(-1);
$isFolder1 = opendir("''''MVM-VIRTUAL04''");
$isFolder2 = opendir("''''MVM-VIRTUAL05''WORK''");
var_dump($isFolder1); //bool(false)
var_dump($isFolder2); //resource(3) of type (stream) 
?>

它显示了以下错误:

Warning: opendir(''MVM-VIRTUAL04',''MVM-VIRTUAL04') [function.opendir]: The specified path is not valid.. (code: 161) in xxx on line 4
Warning: opendir(''MVM-VIRTUAL04') [function.opendir]: failed to open dir: No error in C:'xampp'htdocs'Lab'fopen.php on line 4
bool(false) resource(3) of type (stream) 

据我所知,这两个服务器的结构非常相似,但我真的不知道该怎么办了。我的机器中的XAAMP和Apache以管理员身份在Windows 7 64位中运行。

我曾尝试使用系统,(因为服务器受到限制,但我可以完全访问),但它也不起作用。

system('net use X: "''x-drive'public" password1 /user:username /persistent:no');
$isFolder(is_dir("x:/"));
echo($isFolder); //FALSE

您无法访问PHP中的网络目录。如果你在Linux中工作,你可以简单地将网络驱动器安装到一个文件夹中,操作系统会将其视为"本地",但在Windows中,这是不可能的。

编辑:好吧,这篇文章与我刚才所说的相矛盾,所以我为虚假信息道歉:

PHP is_dir()在Windows网络驱动器上返回false

但是,如果总是返回false,则可能是文件夹没有正确共享。你确定你没有在文件夹名称上犯错误吗?您还必须以管理员身份运行Apache,它才能正常工作。