php复制文件后改名的实例代码
1、сoру函数来实现复制文件后修改文件名,该函数可以将一个文件复制(拷贝)到指定目录中。
2、语法“copy($file, $newfile)”;如果执行成功则返回TRUE,如果执行失败则返回FALSE。
实例
?1 2 3 4 5 6 7 8 9 10 | <?php header( "Content-type:text/html;charset=utf-8" ); $file = 'test.txt' ; $newfile = 'newtest.txt' ; if ( copy ( $file , $newfile )){ echo '文件复制成功!' ; } else { echo '文件复制失败!' ; } ?> |
实例扩展:
?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 | <?php header( "Content-type: text/html; charset=utf-8" ); // 将原文件复制 function recurse_copy( $src , $des ){ $dir = opendir( $src ); mkdir ( $des ); while (( $file =readdir( $dir )) !== false){ if ( $file != '.' && $file != '..' ) { if ( is_dir ( $src . '/' . $file )) { recurse_copy( $src . '/' . $file , $des . '/' . $file ); } else { copy ( $src . '/' . $file , $des . '/' . $file ); } } } closedir ( $dir ); } recurse_copy( './img' , './header' ); // 将复制后的文件重新命名并输出 $dir = './header' ; $filename = scandir( $dir ); $match = null; foreach ( $filename as $k => $v ){ if ( $v != '.' && $v != '..' ) { $v = @iconv( 'GB2312' , 'UTF-8' , $v ); preg_match( '/\d+\s*(.*).jpg/' , $v , $match ); // preg_match('/(.*).jpg/',$v,$match); // var_dump($v); if ( $v != false){ $name = $match [1]; // echo $dir.'/'.$v.'<br>'; // echo ($k-1).'--'.$name.'<br>'; $oldname = $dir . '/' . $v ; $newname = $dir . '/' .( $k -1). '.jpg' ; // echo $newname.'---'.$oldname.'<br>'; if ( file_exists ( $newname )) { echo "目标文件已存" ; // return false; } else { // WINDOW系统中中文默认编码是GBK好心塞,中文文件修改一直报错 // rename($oldname,$newname); rename(iconv( 'UTF-8' , 'GBK' , $oldname ), iconv( 'UTF-8' , 'GBK' , $newname )); } } echo '<img src="' . $newname . '"" id="codetool"> |
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。