PHP xcopy 提供 0 个复制的文件


php xcopy giving 0 files copied

我正在尝试在 php 中做一个 xcopy,但我似乎无法让它工作,我确实尝试了 psexec 的路线,但复制命令也不起作用。

我已经尝试过 shell_exec,exec 和 passthru,但似乎都给出了相同的错误 0 复制的文件,但是如果我通过命令行执行相同的命令,文件可以完美复制,所以它不可能是权限问题,一定是我的代码问题,如果有人可以指出我的问题,我将不胜感激

当我通过命令行执行此操作时,它可以工作:

C:'Users'xante>xcopy c:'wamp'www'xcopy'copythis.bat  ''testmachine'c$'xcopied C:'wamp'www'xcopy'copythis.bat
1 File(s) copied

当我通过 PHP 执行相同的命令时,我得到以下输出:

  Array ( [0] => 0 File(s) copied)  xcopy "c:'wamp'www'xcopy'copythis.bat" "''testmachine'c$'xcopied'"

这是我的PHP代码:

$host="testmachine";
$execute = ('xcopy "c:''wamp'www'xcopy'copythis.bat"  "'''"$host"'c$'xcopied''"');
exec($execute,$output);
print_r ($output)."<br />";
echo $execute;

事实证明,

WAMP有点尴尬,问题与代码无关。

为了解决这个问题,我做了以下工作:

  • 冉服务.msc
  • 寻找万帕奇,
  • 右键单击转到属性,
  • 单击登录并勾选允许服务与桌面交互
  • 重新启动万帕帕奇,问题已解决

尝试使用这个$execute变量

$execute = ('xcopy "c:''wamp''www''xcopy''copythis.bat"' .   '"''''' . $host . '''c$''xcopied''"');