include 'pinyin.class.php';
$dir = 'D:\Temp';
read_and_turn($dir);
function read_and_turn($dir) {
if (!is_dir($dir)) {
return false;
}
$handler = opendir($dir);
if ($handler) {
while (($file = readdir($handler)) !== false) {
$temp = $dir. DIRECTORY_SEPARATOR . $file;
if ($file != '.' && $file != '..') {
// 如果有中文
if (preg_match("/([\x81-\xfe][\x40-\xfe])/", $file)) {
// 如果有. 是文件
if (stripos($file, '.')) {
$pathinfo = pathinfo($file);
$filename = $pathinfo['filename'];
$pinyin = pinyin::get($filename, 0, '', '-');
$suff = $pathinfo['extension'];
$newfilename = $dir . DIRECTORY_SEPARATOR . $pinyin . '.' . $suff;
} else {
$filename = $file;
$pinyin = pinyin::get($filename, 0, '', '-');
$newfilename = $dir . DIRECTORY_SEPARATOR . $pinyin;
}
$oldfilename = iconv('UTF-8','GBK',$temp);
$oldfilename = $temp;
// echo "old=".$oldfilename.', new = '.$newfilename.'<br>';
$res = rename($oldfilename, $newfilename);
if ($res) {
echo 'ok<br>';
} else {
echo 'fail<br>';
}
$temp = $newfilename;
}
if (is_dir($temp)) {
echo '目录:'.$temp.'<br>';
read_and_turn($temp);
}
}
}
closedir($handler);
}
}
PHP将中文目录及目录下文件转成拼音
最新推荐文章于 2025-12-05 12:53:34 发布
本文介绍了一款使用PHP编写的拼音工具类,该工具能够批量将含有中文名称的文件或文件夹转换为对应的拼音形式,方便进行统一管理和检索。通过正则表达式判断中文字符,并利用递归方式处理目录内的所有文件。
3355

被折叠的 条评论
为什么被折叠?



