Home  >  Article  >  php教程  >  PHP转换文件夹下所有文件编码

PHP转换文件夹下所有文件编码

PHP中文网
PHP中文网Original
2016-05-23 09:54:011689browse

php代码

/**
 * 把一个文件夹里的文件全部转码 只能转一次 否则全部变乱码
 * @param string $filename
 */
function iconv_file($filename,$input_encoding='gbk',$output_encoding='utf-8')
{
    if(file_exists($filename))
    {
        if(is_dir($filename))
        {
            foreach (glob("$filename/*") as $key=>$value)
            {
                iconv_file($value);
            }
        }
        else
        {
            $contents_before = file_get_contents($filename);
            /*$encoding = mb_detect_encoding($contents_before,array('CP936','ASCII','GBK','GB2312','UTF-8'));
            echo $encoding;
            if($encoding=='UTF-8')  mb_detect_encoding函数不工作
            {
                return;
            }*/
            $contents_after = iconv($input_encoding,$output_encoding,$contents_before);
            file_put_contents($filename, $contents_after);
        }
    }
    else
    {
        echo '参数错误';
        return false;
    }
}
iconv_file('./common');
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn