PHP从一个服务器复制文件到另一个服务器(收到错误)

时间:2014-05-21 18:34:16

标签: php

我试图运行此代码将文件从一台服务器复制到另一台服务器:

<?php
    $from = '\\sxlsv-leapwebdv\c$\inetpub\wwwroot\leap\Deleteme.txt'; 
    $to = '\\sxlsv-leapwebqa\c$\inetpub\wwwroot\leap\Deleteme.txt'; 
    if(!@copy($from,$to)) 
    { 
        $errors= error_get_last(); 
        echo "COPY ERROR: ".$errors['type']; 
        echo "<br />\n".$errors['message']; 
    } 
    else { 
        echo 'File copied from remote!<br />'; 
    } 
?>

以下是我遇到的错误:

COPY ERROR: 2
copy(/sxlsv-leapwebdv/c$/inetpub/wwwroot/leap/Deleteme.txt): failed to open stream: No such file or directory

文件存在 - 当我在Windows资源管理器中导航到同一路径时,我可以访问该目录和文件。

我做错了吗?

1 个答案:

答案 0 :(得分:2)

你必须逃避你的反斜杠。好吧,你使用单引号,所以你大部分时间都很好。但'\\'计算为单个反斜杠,以便可以转义单引号(通过'\'')。所以你需要改变你的路径

$from = '\\\\sxlsv-leapwebdv\\c$\\inetpub\\wwwroot\\leap\\Deleteme.txt'; 
$to = '\\\\sxlsv-leapwebqa\\c$\\inetpub\\wwwroot\\leap\\Deleteme.txt';