本文实例讲述了php实现批量修改文件名称的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
<?php
session_start();
set_time_limit(0);
//function allfile($dir)
// {
// $files=array();
// if(is_file($dir))
// {
// return $dir;
// }
// $handle = opendir($dir);
// if($handle) {
// while(false !== ($file = readdir($handle))) {
// if ($file != '.' && $file != '..') {
// $filename = $dir . "/" . $file;
// if(is_file($filename)) {
// $files[] = $filename;
// }else {
//
// $files = array_merge($files, allfile($filename));
// }
// }
// } // end while
// closedir($handle);
// }
// return $files;
//
// }
// $dir="./*";
//print_r(allfile($dir));
$path = '.' ;
function get_filetree( $path ){
$tree = array ();
foreach ( glob ( $path . '/*' ) as $single ){
if ( is_dir ( $single )){
$tree = array_merge ( $tree ,get_filetree( $single ));
}
else {
$tree [] = $single ;
}
}
return $tree ;
}
$dir_arr =get_filetree( $path );
$dir_arr_count = count ( $dir_arr );
//echo $dir_arr_count."<br />";
for ( $i =0; $i < $dir_arr_count ; $i ++){
$file_name = $dir_arr [ $i ];
echo $file_name . "<br />" ;
$file = basename ( $file_name );
//echo $file."<br />";
$dir_arr_0_ = explode ( $file , $file_name );
$dir_arr_0_0 = $dir_arr_0_ [0];
$file_arr = explode ( "[1]" , $file );
////rename
$file_new_name = $file_arr [0]. $file_arr [1];
rename( $file_name , $dir_arr_0_0 . $file_new_name );
}
?>
|
希望本文所述对大家PHP程序设计有所帮助。