久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

PHP批量修改文件名稱的方法分析

這篇文章主要介紹了PHP批量修改文件名稱的方法,結(jié)合實(shí)例形式分析了php針對(duì)文件與目錄的遞歸、遍歷、修改的原理與實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了PHP批量修改文件名稱的方法。分享給大家供大家參考,具體如下:

在這里我們利用一個(gè)戰(zhàn)地自己寫的一個(gè)例子來具體分析一下利用PHP批量修改文件名稱的思路和注意事項(xiàng)。

從這個(gè)例子里你將會(huì)看到,PHP如何判斷一個(gè)路徑是不是目錄,如何用PHP取得路徑中的文件名稱和文件的擴(kuò)展名,隨機(jī)函數(shù)rand的基本應(yīng)用,以及這個(gè)程序的核心內(nèi)容遞歸函數(shù)的基本應(yīng)用

程序功能:利用PHP目錄和文件函數(shù)遍歷用戶給出目錄的所有的文件和文件夾,修改文件名稱;

首先判斷用戶給出的目錄是不是一個(gè)合法目錄;

我們這里只是修改狹義的文件名稱(不包括目錄),所以在程序中一定要判斷是不是目錄,如果是目錄我們就打開這個(gè)目錄——從而實(shí)現(xiàn)遍歷目錄下的所有文件。如果不是我們就用一個(gè)隨機(jī)的名稱修改原來的文件名(用隨機(jī)數(shù)做名稱其實(shí)不科學(xué),但是這不是我們的重點(diǎn))。

具體的程序如下:

<?php
//利用PHP目錄和文件函數(shù)遍歷用戶給出目錄的所有的文件和文件夾,修改文件名稱
function fRename($dirname){
 if(!is_dir($dirname)){
 echo "{$dirname}不是一個(gè)有效的目錄!";
 exit();
 }
 $handle = opendir($dirname);
 while(($fn = readdir($handle))!==false){
 if($fn!='.'&&$fn!='..'){
  $curDir = $dirname.'/'.$fn;
  if(is_dir($curDir)){
  fRename($curDir);
  }
  else{
  $path = pathinfo($curDir);
  $newname = $path['dirname'].'/'.rand(0,100).'.'.$path['extension'];
  rename($curDir,$newname);
  echo $curDir.'---'.$newname."<br>";
  }
 }
 }
}
//給出一個(gè)目錄名稱調(diào)用函數(shù)
fRename('pl');
?>

程序分析:

第4行我們用is_dir函數(shù)來判斷用戶給出的目錄是不是一個(gè)有效的目錄名稱;因?yàn)槲覀兪菍W(xué)習(xí)所以寫的簡單一點(diǎn)如果你要放在服務(wù)器上供大家使用的話,你一定要謹(jǐn)慎的驗(yàn)證這個(gè)輸入數(shù)據(jù)——例如,這個(gè)目錄是否允許用戶修改等等……

注意函數(shù)第9行的判斷,必須用全等判斷(PHP全等符號(hào)===三個(gè)等號(hào),不全等!==一個(gè)嘆號(hào)兩個(gè)等號(hào)),否則如果有一個(gè)文件名稱為0(零),會(huì)導(dǎo)致程序意外終止;

第12行,如果讀取的文件是一個(gè)目錄,就在此調(diào)用函數(shù)本身,實(shí)現(xiàn)函數(shù)的遞歸;

注意第16行pathinfo函數(shù)的用法,這個(gè)函數(shù)返回一個(gè)擁有三個(gè)元素的數(shù)組三個(gè)元素分別是:

Dirname路徑的目錄名稱,basename路徑包含的文件名稱 和 extension文件的擴(kuò)展名,具體這個(gè)函數(shù)的用法請參看手冊相關(guān)部分。

在程序的17行中,使用了PHP的隨機(jī)數(shù)函數(shù)rand,這是個(gè)基本的隨機(jī)函數(shù),其他隨機(jī)函數(shù)請參看本站手冊http://shouce.jb51.net/php5/。

注意事項(xiàng):一定要判斷用PHP 的readdir函數(shù)讀取的文件名稱是不是”.”和”..”這很重要,為什么?你可以試試看呢!

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php文件操作總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請勿用于商業(yè)用途。如損害你的權(quán)益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關(guān)文檔推薦

我們有時(shí)候需要對(duì)織夢文檔的點(diǎn)擊量進(jìn)行批量維護(hù),比如采集來的文章,點(diǎn)擊量都為0,需要批量修改,可以用到如下方法1。 1、在數(shù)據(jù)庫里運(yùn)行下面的代碼就可以了,文章的點(diǎn)擊量變得
這篇文章主要介紹了PHP有序表查找之插值查找算法,簡單分析了插值查找算法的概念、原理并結(jié)合實(shí)例形式分析了php實(shí)現(xiàn)針對(duì)有序表插值查找的相關(guān)操作技巧,需要的朋友可以參考下
下面小編就為大家分享一篇ThinkPHP整合datatables實(shí)現(xiàn)服務(wù)端分頁的示例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇PHP實(shí)現(xiàn)APP微信支付的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
這篇文章主要介紹了PHP實(shí)現(xiàn)的多維數(shù)組排序算法,結(jié)合實(shí)例形式對(duì)比分析了php針對(duì)多維數(shù)組及帶有鍵名的多維數(shù)組進(jìn)行排序相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
這篇文章主要為大家詳細(xì)介紹了php結(jié)合ajaxuploadfile實(shí)現(xiàn)無刷新文件上傳功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
主站蜘蛛池模板: 成人黄色电影在线播放 | 一级片视频免费 | 精品日韩一区二区 | 久久专区 | 中文字幕一区二区三区不卡在线 | 国产精品美女在线观看 | 成人av在线播放 | 国产黄色电影 | 久久777 | 一区二区三区四区国产 | 日韩免费av一区二区 | 欧美videosex性极品hd | 欧美日韩久久精品 | 亚洲国产精品va在线看黑人 | 日韩中文字幕高清 | 亚洲精品99| 99在线免费视频 | 免费在线观看成人 | 久久久国产精品 | 久久久久久久电影 | 国产精品高潮呻吟久久久久 | 久久久国产一区二区三区四区小说 | 久久性av| 天天操网 | 99在线视频观看 | 成人在线小视频 | 夜夜精品视频 | 国产 欧美 日韩 一区 | 美女在线视频一区二区三区 | 国产一区二区三区在线 | 欧美日韩不卡在线 | 久久99精品久久久久久国产越南 | 精品一区久久 | 精品美女久久久久久免费 | 亚洲一区二区三区在线 | 免费成年网站 | 日本又色又爽又黄又高潮 | 国产福利小视频 | 欧美中文字幕在线观看 | 久久99视频| 欧美日韩精品免费 |