<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • PHP遞歸復(fù)制、移動(dòng)目錄的自定義函數(shù)操作分享

    時(shí)間:2024-08-19 01:02:29 PHP 我要投稿
    • 相關(guān)推薦

    PHP遞歸復(fù)制、移動(dòng)目錄的自定義函數(shù)操作分享

      雖然復(fù)制一個(gè)目錄是文件操作的基本功能。但PHP中也沒(méi)有給出特定的函數(shù),同樣需要自定義一個(gè)遞歸函數(shù)實(shí)現(xiàn)。要復(fù)制一個(gè)包含多個(gè)子目錄的目錄,將涉及文件的復(fù)制、目錄創(chuàng)建等操作。復(fù)制一個(gè)文件可以通過(guò)PHP提供的copy()函數(shù)完成,創(chuàng)建目錄可以使用mkdir()函數(shù)。定義函數(shù)時(shí),首先對(duì)源目錄進(jìn)行遍歷,如果遇到的是普通文件,直接使用copy()函數(shù)進(jìn)行復(fù)制。如果遍歷時(shí)遇到一個(gè)目錄,則必須建立該目錄,然后再對(duì)該目錄下的文件進(jìn)行復(fù)制操作,如果還有子目錄,則使用遞歸重復(fù)操作,最終將整個(gè)目錄復(fù)制完成。自定義的遞歸函數(shù)復(fù)制目錄的程序代碼如下所示:

      復(fù)制代碼 代碼如下:

      <?php

      //自定義函數(shù)遞歸的復(fù)制帶有多級(jí)子目錄的目錄

      function copyDir($dirSrc,$dirTo){

      if(is_file($dirTo)){ //如果目標(biāo)不是一個(gè)目錄則退出

      echo "目標(biāo)不是目錄不能創(chuàng)建!!";

      return; //退出函數(shù)

      }

      if(!file_exists($dirTo)){ //如果目標(biāo)不是一個(gè)目錄則退出

      mkdir($dirTo); //創(chuàng)建目錄

      }

      if($dir_handle = @opendir($directory)){ //打開(kāi)目錄,并判斷是否能成功打開(kāi)

      while($filename = readdir($dir_handle)){ //循環(huán)遍歷目錄下的所有文件

      if($filename != "."&& $filename != ".."){ //一定要排除兩個(gè)特殊的目錄

      $subFile = $directory."/".$filename; //將目錄下的子文件和當(dāng)前目錄相連

      $sunToFile = $dirTo."/".$filename; //將目標(biāo)目錄的多級(jí)子目錄相連

      if(is_dir($subSrcFile)) //如果為目錄則條件成立

      copyDir($subSrcFile,$subToFile); //遞歸調(diào)用自己復(fù)制子目錄

      if(is_file($subSrcFile)) //如果是文件則條件成立

      copy($subSrcFile,$subToFile); //直接復(fù)制到目標(biāo)位置

      }

      }

      losedir($dir_handle); //關(guān)閉文件資源

      }

      }

      //測(cè)試函數(shù),將目錄“phpMyAdmin”復(fù)制到“D:/admin”

      copyDir("phpMyAdmin","D:/admin");

      ?>

      從安全和跨平臺(tái)等方面考慮,盡量不要去調(diào)用操作系統(tǒng)的SHELL命令“cp-a”完成目錄的復(fù)制。

    【PHP遞歸復(fù)制、移動(dòng)目錄的自定義函數(shù)操作分享】相關(guān)文章:

    PHP的壓縮函數(shù)06-21

    淺析php函數(shù)的實(shí)例06-08

    php外部執(zhí)行命令函數(shù)10-27

    簡(jiǎn)單介紹php構(gòu)造函數(shù)用法08-31

    PHP中函數(shù)的使用說(shuō)明09-01

    PHP中的排序函數(shù)區(qū)別分析08-23

    探討PHP函數(shù)的實(shí)現(xiàn)原理及性能07-07

    word的自動(dòng)生成目錄如何操作08-10

    php對(duì)圖像的各種處理函數(shù)代碼總結(jié)07-03

    php字符串處理函數(shù)大全08-21

    主站蜘蛛池模板: 亚洲精品tv久久久久久久久久| 2021国产精品视频| 老司机亚洲精品影院| 国产乱人伦偷精品视频免观看| 国内精品久久久久伊人av| 精品久久久无码中文字幕| 99精品免费视频| 亚洲日韩一页精品发布| 国产亚洲精品无码专区| 国产精品视频免费| 久久国产精品一国产精品金尊| 免费精品久久久久久中文字幕 | 国自产精品手机在线观看视频| 国产乱人伦偷精品视频AAA| 亚洲欧洲久久久精品| 国产欧美一区二区精品性色99| 国产福利视精品永久免费| 久久久无码精品亚洲日韩按摩| 网友偷拍日韩精品 | 国产成人精品久久二区二区| 亚洲AV无码成人精品区在线观看 | 久久激情亚洲精品无码?V| 亚洲精品成人av在线| 国产成人精品免费午夜app| 日本内射精品一区二区视频| 亚洲国产精品人人做人人爱| 久久99精品国产麻豆婷婷| 国产精品免费大片一区二区| 午夜影视日本亚洲欧洲精品一区| 97久久超碰成人精品网站| 精品欧洲av无码一区二区三区| 亚洲av永久无码精品秋霞电影影院 | 久久精品国产91久久麻豆自制| 精品久久久噜噜噜久久久| 亚洲精品国偷自产在线| 亚洲午夜福利精品无码| 亚洲AV无码之日韩精品| 四虎成人精品在永久在线| 四虎成人精品国产永久免费无码| 香港aa三级久久三级老师2021国产三级精品三级在 | 久久99国产精品久久99果冻传媒|