猫狗不和 2013-11-19 02:34 采纳率: 0%
浏览 2025

php如何递归删除中文目录?

function delete_folder($tmp_path){
    if(!is_writable($tmp_path) && is_dir($tmp_path)){
        chmod($tmp_path,0777);
    }
    $handle = opendir(iconv('utf-8','gb2312',$tmp_path)); 
    while(($tmp=readdir($handle)) !== false){
        if($tmp!='..' && $tmp!='.' && $tmp!=''){ 
            if(is_writable($tmp_path.'/'.$tmp) && is_file($tmp_path.'/'.$tmp)){ 
                unlink($tmp_path.'/'.$tmp); 
            }elseif(!is_writable($tmp_path.'/'.$tmp) && is_file($tmp_path.'/'.$tmp)){
                chmod($tmp_path.'/'.$tmp,0666); 
                unlink($tmp_path.'/'.$tmp); 
            } 

            if(is_writable($tmp_path.'/'.$tmp) && is_dir($tmp_path.'/'.$tmp)){
                delete_folder($tmp_path.'/'.$tmp);  
            }elseif(!is_writable($tmp_path.'/'.$tmp) && is_dir($tmp_path.'/'.$tmp)){ 
                chmod($tmp_path.'/'.$tmp,0777); 
                delete_folder($tmp_path.'/'.$tmp);
            } 
        }
    }
    closedir($handle);
    rmdir(iconv('utf-8','gb2312',$tmp_path));
    if(!is_dir($tmp_path)){
        return true;
    }else{
        return false;
    }
}

只要目录名字是中文或者目录里包含中文文件,这个目录就删除不了,甚是头疼,求解!
看看这个递归删除目录的函数,哪里需要修改?

  • 写回答

2条回答 默认 最新

报告相同问题?

悬赏问题

  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样