日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > PHP 批量替換相對地址為絕對地址實現代碼

PHP 批量替換相對地址為絕對地址實現代碼

來源:程序員人生   發布時間:2014-01-30 20:49:39 閱讀次數:4056次
  1. <?php 
  2.  
  3. //需要替換的關鍵字 
  4. $GLOBALS["patterns"] = array
  5.     "/#BASE_URL#/" 
  6. ); 
  7. //替換后的內容,和上面的匹配規則一一對應 
  8. $GLOBALS["replacements"] = array
  9.    "http://api.map.baidu.com/lbsapi/cloud/" 
  10.     //"http://172.22.168.178/lbsapi/" 
  11.     //"http://dev.baidu.com/wiki/static/map/cloud/" 
  12. ); 
  13. /** 
  14.  * 操縱文件類 
  15.  *  
  16.  * 例子: 
  17.  * FileUtil::copyDir('b','d/e');                    測試復制文件夾 建立一個d/e文件夾,把b文件夾下的內容復制進去 
  18.  * FileUtil::copyFile('b/1/2/3.exe','b/b/3.exe'); 測試復制文件        建立一個b/b文件夾,并把b/1/2文件夾中的3.exe文件復制進去 
  19.  * FileUtil::createDir('a/1/2/3');                    測試建立文件夾 建一個a/1/2/3文件夾 
  20.  * FileUtil::unlinkFile('b/d/3.exe');             測試刪除文件        刪除b/d/3.exe文件 
  21.  */ 
  22. class FileUtil { 
  23.     /** 
  24.      * 建立文件夾 
  25.      * 
  26.      * @param string $aimUrl 
  27.      * @return viod 
  28.      */ 
  29.     function createDir($aimUrl) { 
  30.         $aimUrl = str_replace('''/'$aimUrl); 
  31.         $aimDir = ''
  32.         $arr = explode('/'$aimUrl); 
  33.         foreach ($arr as $str) { 
  34.             $aimDir .= $str . '/'
  35.             if (!file_exists($aimDir)) { 
  36.                 mkdir($aimDir); 
  37.             } 
  38.         } 
  39.     } 
  40.     /** 
  41.      * 刪除文件 
  42.      * 
  43.      * @param string $aimUrl 
  44.      * @return boolean 
  45.      */ 
  46.     function unlinkFile($aimUrl) { 
  47.         if (file_exists($aimUrl)) { 
  48.             unlink($aimUrl); 
  49.             return true; 
  50.         } else { 
  51.             return false; 
  52.         } 
  53.     } 
  54.      
  55.     /** 
  56.      * 復制文件夾 
  57.      * 
  58.      * @param string $oldDir 
  59.      * @param string $aimDir 
  60.      * @param boolean $overWrite 該參數控制是否覆蓋原文件 
  61.      * @return boolean 
  62.      */ 
  63.     function copyDir($oldDir$aimDir$overWrite = false) { 
  64.         $aimDir = str_replace('''/'$aimDir); 
  65.         $aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir.'/'
  66.         $oldDir = str_replace('''/'$oldDir); 
  67.         $oldDir = substr($oldDir, -1) == '/' ? $oldDir : $oldDir.'/'
  68.         if (!is_dir($oldDir)) { 
  69.             return false; 
  70.         } 
  71.         if (!file_exists($aimDir)) { 
  72.             FileUtil::createDir($aimDir); 
  73.         } 
  74.         $dirHandle = opendir($oldDir); 
  75.         while(false !== ($file = readdir($dirHandle))) { 
  76.             if ($file == '.' || $file == '..') { 
  77.                 continue
  78.             } 
  79.             if (!is_dir($oldDir . $file)) { 
  80.                 FileUtil::copyFile($oldDir . $file$aimDir . $file$overWrite); 
  81.             } else { 
  82.                 FileUtil::copyDir($oldDir . $file$aimDir . $file$overWrite); 
  83.             } 
  84.         } 
  85.         return closedir($dirHandle); 
  86.     } 
  87.     /** 
  88.      * 復制文件 
  89.      * 
  90.      * @param string $fileUrl 
  91.      * @param string $aimUrl 
  92.      * @param boolean $overWrite 該參數控制是否覆蓋原文件 
  93.      * @return boolean 
  94.      */ 
  95.     function copyFile($fileUrl$aimUrl$overWrite = false) { 
  96.         if (!file_exists($fileUrl)) { 
  97.             return false; 
  98.         } 
  99.         if (file_exists($aimUrl) && $overWrite == false) { 
  100.             return false; 
  101.         } elseif (file_exists($aimUrl) && $overWrite == true) { 
  102.             FileUtil::unlinkFile($aimUrl); 
  103.         } 
  104.         $aimDir = dirname($aimUrl); 
  105.         FileUtil::createDir($aimDir); 
  106.         copy($fileUrl$aimUrl); 
  107.         //替換變量 
  108.         $apiFilePointer = fopen($aimUrl'r'); 
  109.         $apiFileContent = fread($apiFilePointerfilesize($aimUrl)); 
  110.         //只在js、html、css文件進行替換 
  111.         if (preg_match('/(.js|.html|.css|.htm)$/'$aimUrl)) { 
  112.             $apiFileContent = preg_replace($GLOBALS["patterns"], $GLOBALS["replacements"], $apiFileContent); 
  113.         } 
  114.         fclose($apiFilePointer); 
  115.         echo $aimUrl."rn"
  116.         $apiFilePointer = fopen($aimUrl'w+'); 
  117.         fwrite($apiFilePointer$apiFileContent); 
  118.         fclose($apiFilePointer); 
  119.         //替換變量 
  120.         return true; 
  121.     } 
  122. FileUtil::copyDir("resource","cloud",true); 
  123. ?> 
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 99热精品在线 | 亚洲视频在线免费观看 | 国产理论在线观看 | 日韩成人免费观看 | 亚洲综合15p | 国产精品a久久久久 | 爱情岛免费永久网站 | 国产欧美日韩在线视频 | 欧洲一区二区三区免费视频 | 欧美日韩国产一区二区在线观看 | 日本爱爱视频 | 一区久久 | 国产精品久久久久久久久免费 | 日韩 国产 在线 | 麻豆视频国产 | av在线一区二区三区 | 91精品一区二区三区久久久久久 | 成人在线国产视频 | 亚洲免费视频一区二区 | 欧美一区二区三区在线观看视频 | 天天操夜夜操免费视频 | 日韩高清国产一区在线 | 国产91亚洲 | 又爽又大又黄a级毛片在线视频 | av在线播放网 | 欧洲免费vps一级毛片 | 欧美视频一区 | 91麻豆精品国产91久久久使用方法 | 国产成人综合网 | 97免费在线视频 | 国内精品一区二区 | 欧美日韩在线播放 | 国内精品久久久久久久97牛牛 | 日韩欧乱色一区二区三区在线 | 成人深夜视频 | 成人性生交大片免费看视频r | 国产精品视频久久 | 日韩午夜av | 久热这里只有 | 国产hsck在线亚洲 | 成人永久视频 |