<?
/*
**
**  simonlsy@csdn 2005-4-5
**
*/
$dir = "D:\\other\\simon\\network.web\\test\\";    //原来文件存放的目录
$cdir=  "D:\\other\\simon\\network.web\\test\\test1\\";  //目标拷贝的目录if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
      while (($file = readdir($dh)) !== false)
       {        if($file!="." && $file !=".." && filetype($dir . $file) !="dir")
        {
                if( copy($dir.$file,$cdir.$file))
                {
                echo $dir.$file."&nbsp;拷贝到&nbsp;".$cdir.$file."成功<Br>";                }        }       }        closedir($dh);
    }
}
?>

解决方案 »

  1.   

    对于少文件,simonlsy(西大浪人) 的例子当然 OK ,但如果文件一多,就会运行超时,这种情况下,只能分页运行拷贝
      

  2.   

    下班之后,回到家里做了一个实验,蛮好玩,结合winrar 32位 DOS版本在windows环境下应用成功!<?
    /************************************
    ##
    ##文件名:mvfiles.php
    ##
    ##作者:西大浪人([email protected])
    ##
    ##最后生成日期:2005-4-5
    ##
    ## 使用说明:本程序结合winrar Win32版本
    ##           的执行文件Rar.exe 一起使用
    ## 操作环境:windows+php
    ## 默认说明:本文档中的例子为将根目录下
    ##           的test2下面的所有文件和文件
    ##          夹转移到test3目录下面
    ##
    ************************************/    $dir            ="test2";  //这是你要压缩的目录
        $ndir           ="test3";//这是你要转移的目录
        $tmpfilestr     =md5(date("Y-m-d H:i:s"));  //临时文件的文件名
        $rarcommand     ="Rar.exe a -ep1 -r ".$tmpfilestr." ".$dir."\\*";      //winrar执行压缩命令行  不包含压缩的路径
        $unrarcommand   ="Rar.exe x -o+ ".$tmpfilestr.".rar ".$ndir."\\";          //winrar执行的解压命令行 覆盖已经存在的文件
        echo "<div align=center><font color=red>+++++++++++++++++++++下面开始压缩文件+++++++++++++++++++++++++++</font>
            <font color=blue><br><br><pre>";    system($rarcommand);      //开始执行压缩    echo "</pre></font><font color=red>+++++++++++++++++++++压缩完毕+++++++++++++++++++++++++++</font><br><br>";    echo "<font color=red>+++++++++++++++++++++开始解压文件+++++++++++++++++++++++++++</font>
            <font color=blue><br><br><pre>";    system($unrarcommand);   //开始执行解压缩    echo "</pre></font><font color=red>+++++++++++++++++++++解压完毕+++++++++++++++++++++++++++</font><br><br></div>";    unlink($tmpfilestr.".rar"); //删除临时解压的文件
    ?>
      

  3.   

    好难看,发到phpx上面去了~~~http://www.phpx.com/happy/showthread.php?s=&threadid=99196
      

  4.   

    解决方案2:
    <?
    /************************************
    ##
    ##文件名:mvfiles1.php
    ##
    ##作者:西大浪人([email protected])
    ##
    ##最后生成日期:2005-4-5
    ##
    ## 使用说明:直接调用windows命令行拷贝文件
    ## 操作环境:windows+php
    ## 默认说明:本文档中的例子为将根目录下
    ##           的test2下面的所有文件和文件
    ##          夹转移到test3目录下面
    ##
    ************************************/    $dir            ="test2";  //这是你要压缩的目录
        $ndir           ="test3";//这是你要转移的目录
        $command        ="xcopy /s ".$dir." ".$ndir."\\";    echo "<div align=center><font color=red>+++++++++++++++++++++开始拷贝文件+++++++++++++++++++++++++++</font>
            <font color=blue><br><br><pre>";    system($command);      //开始执行拷贝    echo "</pre></font><font color=red>+++++++++++++++++++++拷贝完毕+++++++++++++++++++++++++++</font><br><br>";
    ?>
      

  5.   

    simonlsy(西大浪人) : php的服务器大部分都是Linux的哦 :)
    用system做命令行的大量数据拷贝好象感觉不是太好,不过我也还没想到用php怎么弄,想到再说