本文章來給大家介紹一個利用PHP轉換文件夾下所有文件的編碼,這種我們很適用一次批量轉換多個文件的編輯哦,注意只轉一次哦.實例代碼如下:
- <?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('./test');
- ?>
新聞熱點
疑難解答