php 怎么去掉文件名中的中文 rename("山水20061813.jpg ", 20061813.jpg"); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 function foo($str) { $tmp = preg_replace('/[\x80-\xff]+/', '', $str); if($tmp != $str) { if(! file_exists($tmp)) { rename($str, $tmp); return "$str to $tmp"; } return "cat rename $str to $tmp"; } return '';}$ar = array_map('foo', glob('目录/*.jpg'));$ar 中的非空项是被改名的信息 试试这个思路while($file == readdir(opendir($dir)){ if(preg_match('/[^\x00-\xff]*[0-9]*\.jpg/',$str,$match) { $file = $match[0]; }} //遍历目录class get_all_files{ var $lists = array(); function list_all_files($dir){ if(is_dir($dir)){ $dh = opendir($dir); } else { return; } while($file = readdir($dh)){ if($file=="." || $file=="..") continue; $newdir = $dir."/".$file; if(is_dir($newdir)){ $this->list_all_files($newdir); $this->lists['dir'][]=$file; } else { $this->lists['file'][]=$file; } } closedir($dh); return $this->lists; }}//替换$f = new get_all_files;$s = $f-> list_all_files("./");foreach($s as $k){ $end = preg_replace('/[\x80-\xff]+/',"",$k); rename($k,$end);:w //echo "$end \n";} 为什么thinkphp不能实现图片批量上传 页面加了<script langage……后就白屏了 我写的php占用太多资源,要求指导 程序在本机没问题,传到空间上出事了。。。 php escape 编码问题 怎样在网页中显示ssh2_exec得到的结果? PHP 数组 linux+mysql+apache+phpmyadmin 安装出现的问题,请高手解答 用PHP模访搜房网做个网站,关于设计方面问题请各位大侠指教,不胜感激!!! 在PHP中调用C语言 根据IP判断地区 日期变量的操作问题
$tmp = preg_replace('/[\x80-\xff]+/', '', $str);
if($tmp != $str) {
if(! file_exists($tmp)) {
rename($str, $tmp);
return "$str to $tmp";
}
return "cat rename $str to $tmp";
}
return '';
}$ar = array_map('foo', glob('目录/*.jpg'));$ar 中的非空项是被改名的信息
while($file == readdir(opendir($dir))
{
if(preg_match('/[^\x00-\xff]*[0-9]*\.jpg/',$str,$match)
{
$file = $match[0];
}
}
class get_all_files
{
var $lists = array();
function list_all_files($dir){
if(is_dir($dir)){
$dh = opendir($dir);
} else {
return;
}
while($file = readdir($dh)){
if($file=="." || $file=="..") continue;
$newdir = $dir."/".$file;
if(is_dir($newdir)){
$this->list_all_files($newdir);
$this->lists['dir'][]=$file;
} else {
$this->lists['file'][]=$file;
}
}
closedir($dh);
return $this->lists;
}
}//替换
$f = new get_all_files;
$s = $f-> list_all_files("./");
foreach($s as $k)
{
$end = preg_replace('/[\x80-\xff]+/',"",$k);
rename($k,$end);:w
//echo "$end \n";
}