最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2017年02月27日 11:43:35   作者:小炒花生米  
這篇文章主要介紹了PHP批量修改文件名稱的方法,結(jié)合實例形式分析了php針對文件與目錄的遞歸、遍歷、修改的原理與實現(xiàn)技巧,需要的朋友可以參考下

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

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

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

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

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

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

具體的程序如下:

<?php
//利用PHP目錄和文件函數(shù)遍歷用戶給出目錄的所有的文件和文件夾,修改文件名稱
function fRename($dirname){
 if(!is_dir($dirname)){
 echo "{$dirname}不是一個有效的目錄!";
 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>";
  }
 }
 }
}
//給出一個目錄名稱調(diào)用函數(shù)
fRename('pl');
?>

程序分析:

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

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

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

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

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

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

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

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

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

相關(guān)文章

  • PHP分享圖片的生成方法

    PHP分享圖片的生成方法

    這篇文章主要介紹了PHP分享圖片的生成方法,類似淘寶寶貝分享圖片功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • php實現(xiàn)json編碼的方法

    php實現(xiàn)json編碼的方法

    這篇文章主要介紹了php實現(xiàn)json編碼的方法,實例分析了php實現(xiàn)json編碼轉(zhuǎn)換的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • php中文字符串截取方法實例總結(jié)

    php中文字符串截取方法實例總結(jié)

    這篇文章主要介紹了php中文字符串截取方法實例,針對常見的字符串截取函數(shù)進行了分析比對,并給出了一個完整實例來解決PHP中文字符串截取問題,需要的朋友可以參考下
    2014-09-09
  • 初步介紹PHP擴展開發(fā)經(jīng)驗分享

    初步介紹PHP擴展開發(fā)經(jīng)驗分享

    在PHP開發(fā)的過程中,有時候為了提高性能,需要選擇擴展的方式去實現(xiàn),本文簡單介紹怎么開發(fā)一個簡單的PHP擴展,解開PHP擴展開發(fā)的神秘面紗
    2012-09-09
  • PHP抽象類與接口的區(qū)別詳解

    PHP抽象類與接口的區(qū)別詳解

    今天小編就為大家分享一篇關(guān)于PHP抽象類與接口的區(qū)別詳解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • redis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法

    redis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法

    下面小編就為大家?guī)硪黄猺edis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • PHP 多維數(shù)組排序(usort,uasort)

    PHP 多維數(shù)組排序(usort,uasort)

    當我們想對多維數(shù)組進行排序時,多維數(shù)組的每個元素又是一數(shù)組類型,而兩個數(shù)組如何比較大小?這是需要用戶自定義的(是按每個數(shù)組的第一元素比較還是…)。
    2010-06-06
  • 基于PHP安裝zip拓展,以及l(fā)ibzip安裝的問題

    基于PHP安裝zip拓展,以及l(fā)ibzip安裝的問題

    下面小編就為大家分享一篇基于PHP安裝zip拓展,以及l(fā)ibzip安裝的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • php_screw 1.5:php加密: 安裝與使用詳解

    php_screw 1.5:php加密: 安裝與使用詳解

    本篇文章是對php_screw 1.5:php加密: 安裝與使用進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • php實現(xiàn)將上傳word文件轉(zhuǎn)為html的方法

    php實現(xiàn)將上傳word文件轉(zhuǎn)為html的方法

    這篇文章主要介紹了php實現(xiàn)將上傳word文件轉(zhuǎn)為html的方法,涉及php針對word文件操作的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06

最新評論

新绛县| 高密市| 景德镇市| 靖西县| 克东县| 巴林右旗| 长宁县| 宝兴县| 琼结县| 丹巴县| 贞丰县| 韶关市| 襄城县| 汕尾市| 长乐市| 江山市| 上饶县| 拉孜县| 平顶山市| 正蓝旗| 新密市| 陇南市| 上蔡县| 广昌县| 金沙县| 河池市| 黄陵县| 河南省| 辉南县| 新晃| 临沭县| 电白县| 肃宁县| 辉南县| 北安市| 安仁县| 忻城县| 内江市| 都江堰市| 息烽县| 马龙县|