红穆笔记
首頁 語言筆記 php批量替換指定文件夾裏面文件名字
語言筆記 PHP

php批量替換指定文件夾裏面文件名字

php批量替换指定文件夹里面文件名字

以下是一個可以實現批量重命名指定文件夾下文件名的 PHP 函數:

🔒 隱藏內容:登錄後可查看

function batchRenameFiles($dir, $search, $replace) {
  $files = scandir($dir); // 獲取目錄下所有文件

  foreach ($files as $file) {
    $filePath = $dir . DIRECTORY_SEPARATOR . $file;

    // 排除 "." 和 ".." 以及目錄
    if ($file == '.' || $file == '..' || is_dir($filePath)) {
      continue;
    }

    // 檢查文件名是否包含搜索字符串
    if (strpos($file, $search) !== false) {
      $newName = str_replace($search, $replace, $file); // 構造新文件名

      // 檢查新文件名是否已存在
      if (file_exists($dir . DIRECTORY_SEPARATOR . $newName)) {
        echo "文件 $newName 已存在,跳過文件 $file。\n";
      } else {
        // 進行文件重命名
        if (rename($filePath, $dir . DIRECTORY_SEPARATOR . $newName)) {
          echo "重命名文件 $file 爲 $newName 成功。\n";
        } else {
          echo "重命名文件 $file 爲 $newName 失敗。\n";
        }
      }
    }
  }
}

該函數接受三個參數:

  • $dir: 要批量重命名文件的目錄路徑。
  • $search: 要查找和替換的字符串。
  • $replace: 要替換成的字符串。

函數通過使用 scandir 函數來獲取指定目錄下的所有文件,然後對每個文件進行判斷,如果文件名包含搜索字符串,則構造新文件名並進行重命名操作。在重命名操作中,函數還會檢查新文件名是否已經存在,以避免重名問題。

你可以通過以下方式調用該函數:

batchRenameFiles('/path/to/directory', 'old_string', 'new_string');

其中,/path/to/directory 是要批量重命名的目錄路徑,old_string 是要查找和替換的字符串,new_string 是要替換成的字符串。

成功後的效果圖:

ad1a1b7183091948

輸出自己可以美化一下,也就加個br

微信赞赏

微信

支付宝赞赏

支付寶

✍️ 作者: 紅穆

網站管理員 · 感謝閱讀,更多精彩內容敬請關注

作者主頁 查看主頁 →

相關文章

PHP ob函数记录

PHP ob函數記錄 語言筆記 PHP

下面3個函數的用法 ob_get_contents(); ob_end_clean(); ob_start(); 可以藉助這幾個函數實現緩衝本地文件,以及執行本地腳本代碼。 使用ob_start()把輸出的代碼存到緩衝區,頁面不會顯示出來; 然後用ob_get_contents得到緩衝區的數據。 o…
👁 141
PHP preg

PHP preg 語言筆記 PHP

preg_match_all 函數用於執行一個全局正則表達式匹配。preg_match_all() 語法int preg_match_all ( string $pattern , string $subject [, array &$matches [, int $flags = PREG…
👁 169
PHP 三元运算符与if的详解

PHP 三元運算符與if的詳解 語言筆記 PHP

三元運算符語條件 ? 結果1 : 結果2 說明:問號前面的位置是判斷的條件,如果滿足條件時結果1,不滿足時結果2。本文對三元運算符和if...else...進行對比詳解,希望對大家有所幫助。今天在改論文在線的時候遇到了一個語句看不懂:$if_summary = $row['IF_SUMMARY']=…
👁 189
PHP强制转换类型

PHP強制轉換類型 語言筆記 PHP PHP採集 PHP與mysql

獲取數據類型1.如果想查看某個表達式的值和類型,用var_dump()。 2.如果只是想得到一個易讀懂的類型的表達方式用於調試,用 gettype()。3.要查看某個類型,不要用 gettype(),而用is_type() 函數。字符串轉換爲數值當一個字符串被當作數字來求值時,根據以下規則來決定結果…
👁 232
php 字符串中是否包含指定字符串的多种方法

php 字符串中是否包含指定字符串的多種方法 語言筆記 PHP

strstrstrstr() 函數搜索一個字符串在另一個字符串中的第一次出現。該函數返回字符串的其餘部分(從匹配點)。如果未找到所搜索的字符串,則返回 false。代碼如下:<?php $email = 'user@example.com'; $domain = strstr($email, …
👁 138

推薦閱讀

PHP删除指定目录下面的所有文件和目录,可排除文件

PHP刪除指定目錄下面的所有文件和目錄,可排除文件 語言筆記 PHP

我真的哭了啊!折騰半天,結果glob這個函數有點坑,無法獲取到.開頭的系統隱藏文件,於是折騰半天,原來發現還有其他函數可以查詢所有文件!PHP 刪除指定目錄下面的所有文件以及目錄,函數兩個參數,一個是刪除的目錄,一個是不需要刪除的文件數組function deleteDirectory($direc…
👁 179
(自适应手机端)户外运动设备类网站pbootcms模板 体育运动服装网站源码下载 0350

(自適應手機端)戶外運動設備類網站pbootcms模板 體育運動服裝網站源碼下載 0350 實用收藏 pbootcms模板

一款自適應手機端的戶外運動設備與體育運動服裝PbootCMS網站模板。設計風格活力運動,適合展示戶外裝備、運動服飾及品牌故事。有助於體育用品品牌在線上吸引運動愛好者,提升品牌形象。模板展示 安裝說明 網站後臺:/admin.php 賬號:admin 密碼:admin 解壓密碼:www.4s5.cn相…
👁 49
灯具家居装饰类网站模板 0260

燈具家居裝飾類網站模板 0260 實用收藏 易優模板

一款針對燈具與家居裝飾行業的eyoucms網站模板。設計風格現代明亮,能夠展示燈具產品、家居裝飾、照明方案及品牌故事。有助於照明品牌在線上展示產品,吸引家庭與工程客戶。模板展示 安裝說明 網站後臺:/login.php 賬號:admin 密碼:admin 相關文章易優CMS安裝常見問題總結易優CMS…
👁 33
JavaScript 三秒钟后关闭本页面

JavaScript 三秒鐘後關閉本頁面 語言筆記 JavaScript

可以使用 JavaScript 中的 setTimeout() 函數來實現頁面自動關閉的效果。下面是一段示例代碼:setTimeout(function() { window.close(); }, 3000);這段代碼中,setTimeout() 函數會在 3 秒後調用一個匿名函數,該匿名函數中調…
👁 193
(自适应手机端)手机软件APP下载类网站Pbootcms模板 游戏软件应用网站源码下载 0351

(自適應手機端)手機軟件APP下載類網站Pbootcms模板 遊戲軟件應用網站源碼下載 0351 實用收藏 pbootcms模板

本套自適應手機端的手機軟件APP下載類PbootCMS網站模板。設計風格現代科技,適合展示各類手機遊戲、應用軟件的下載與介紹。有助於軟件下載站在線上吸引流量,實現廣告變現。模板展示 安裝說明 網站後臺:/admin.php 賬號:admin 密碼:admin 解壓密碼:www.4s5.cn相關文章P…
👁 55
美容化妆减肥类网站模板 0261

美容化妝減肥類網站模板 0261 實用收藏 易優模板

此套eyoucms模板適用於美容、化妝與減肥行業,設計風格時尚精緻,能夠展示美容服務、化妝造型、減肥項目及品牌故事。有助於美容減肥機構在線上吸引女性客戶,提升品牌知名度。模板展示 安裝說明 網站後臺:/login.php 賬號:admin 密碼:admin 相關文章易優CMS安裝常見問題總結易優CM…
👁 34