4
  1. WAMP 服务器
  2. PHP fopen 函数需要打开共享文件夹中的文件 //server/folder1/file1.txt
  3. php 具有 SYSTEM 用户权限,但共享文件夹仅对 userX/password 可见

如何在 php 脚本中打开这个远程文件?

4

2 回答 2

4

您可以在路径中指定用户名和密码://user:password@server/folder1/file1.txt

于 2012-01-17T11:26:20.250 回答
2

我遇到了完全相同的问题,而 Sjoerd 的答案在 Windows 上对我不起作用。

我在 PHP 中编写了一个挂载函数,它基本上是exec

net use "\\smbserver\share" /user:"myuser" "mypassword" /persistent:no

然后你可以正常访问路径,如\\smbserver\share/path/file.

这适用于文件包装器选项表中指定的所有函数:

  • 允许阅读
  • 允许写作
  • 允许追加
  • 允许同时阅读和写作
  • 支持统计()
  • 支持 unlink()
  • 支持重命名()
  • 支持 mkdir()
  • 支持 rmdir()

这在远程共享上非常稳定,但是当我使用 localhost 和 apache 作为 SYSTEM 时对我不起作用。

之后不要忘记通过execing 卸载:

net use "\\smbserver\share" /delete /yes

我希望这有帮助。

于 2016-04-21T06:55:38.860 回答