0

我有以下 php 命令:

  1. $shellOutput = shell_exec('net use');

我收到以下输出:

Status  Local   Remote      Network

OK            S:    \\srv\dataS     Microsoft Windows Network

当我在 cmd 窗口中运行 net use 时,我收到以下输出

 Status Local   Remote      Network

 OK           L:    \\srv\dataL Microsoft Windows Network
 OK           M:    \\srv\dataM Microsoft Windows Network
 OK           P:    \\srv\dataP Microsoft Windows Network
 OK           R:    \\srv\dataR Microsoft Windows Network
 OK           S:    \\srv\dataS Microsoft Windows Network

应该显示所有映射的网络驱动器还是 PHP 限制返回的驱动器数量?

如果该命令应该返回超过 1 个网络驱动器,请提供简短示例说明谁可以返回超过 1 行。

TIA


执行 var_dump 后,返回的值为

Status  Local   Remote      Network

OK      S:      \\srv\dataS     Microsoft Windows Network
4

1 回答 1

0

shell_execute应该将完整的输出作为字符串返回,请确保您没有使用exec

  1. 确保运行代码(apache、www-data、httpd 等)的用户具有连接所有网络驱动程序的正确权限。
  2. 你能告诉我你想达到什么目标吗?

不幸的是,我没有 Windows 环境,也无法测试 Windows 命令。然而; Linux 命令与shell_exec一起按预期工作(输出为字符串)

请告诉我

于 2014-08-29T02:48:47.380 回答