How to write a simple file batch rename function through PHP
Writing a file batch rename function using PHP is a very practical technique that can be used Modify file names in batches, add prefixes or suffixes, and perform other customization operations. In this article, we will introduce how to use PHP to achieve this functionality and provide some specific code examples.
Step 1: Get the file list under the target folder
First, we need to get the file list under the target folder. You can use PHP's scandir()
function to get the names of all files and folders under the target folder. The following is a sample code:
$dir = 'path/to/directory'; // 设置目标文件夹路径 $files = scandir($dir); // 获取目标文件夹下的文件列表 // 去除掉.和..这两个系统目录 $files = array_diff($files, array('.', '..')); // 遍历文件列表 foreach($files as $file) { // 在这里进行文件重命名操作 }
Step 2: Perform file rename operation
After obtaining the file list, we can use PHP’s rename()
function to rename the file Naming operations. rename()
The function accepts two parameters. The first parameter is the original path and name of the file to be renamed, and the second parameter is the target path and name of the file to be renamed.
The following is a sample code that adds a prefix to the names of all files in the target folder:
$newPrefix = 'new_'; // 设置新的文件前缀 foreach($files as $file) { $oldPath = $dir . '/' . $file; // 构建原始文件路径和名称 $newPath = $dir . '/' . $newPrefix . $file; // 构建目标文件路径和名称 rename($oldPath, $newPath); // 进行文件重命名操作 }
Step 3: Execute the file batch rename function
Add the above code snippet Putting it all together and adding some extra logic, we can implement a complete batch file renaming feature.
The following is a complete sample code that adds a prefix to the names of all files under the target folder and only processes files with the file type ".txt":
$dir = 'path/to/directory'; // 设置目标文件夹路径 $newPrefix = 'new_'; // 设置新的文件前缀 $files = scandir($dir); // 获取目标文件夹下的文件列表 // 去除掉.和..这两个系统目录 $files = array_diff($files, array('.', '..')); foreach($files as $file) { // 只处理文件类型为.txt的文件 if(pathinfo($file, PATHINFO_EXTENSION) === 'txt') { $oldPath = $dir . '/' . $file; // 构建原始文件路径和名称 $newPath = $dir . '/' . $newPrefix . $file; // 构建目标文件路径和名称 rename($oldPath, $newPath); // 进行文件重命名操作 } }
Summary:
Through the above steps, we can use PHP to write a simple file batch rename function. You can modify and extend the code to meet your needs for more complex file renaming operations.
Please note that before performing batch renaming of files, be sure to back up your files to avoid irreversible damage to the files. It is recommended to perform multiple tests before use to ensure that the code works as expected.
The above is the detailed content of How to write a simple file batch rename function through PHP. For more information, please follow other related articles on the PHP Chinese website!