最近公司年会要多一个抽奖页,发了每个人的头像,图片命名为工号+个人名字.jpg(1035 名字.jpg),批量重命名并获取每个人的名字上代码
<?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.'"" alt="'.$name.'">';
}
}
?>