ホームページ  >  記事  >  バックエンド開発  >  Eclipse、PHP コード バッチ コレクション エンコーディング

Eclipse、PHP コード バッチ コレクション エンコーディング

WBOY
WBOYオリジナル
2016-06-13 12:36:25822ブラウズ

EclipseコードとPHPコードのバッチ再コーディング
Eclipseではファイルエンコーディングを変更できますが、変更できるのはphp以外のファイルのみです。

Eclipse プロジェクトの下にこのようなフォルダーがあります
.settings

org.eclipse.core.resources.prefs ファイル
があります。これには、これと同様のエンコード構成が含まれています
[code=INIFile]#Wed Dec 26 12:59:37 CST 2007
eclipse.preferences.version=1
encoding//test/BlackVSWhite.java=UTF-8
encoding/<プロジェクト>=GBK







<?php 
//
set_time_limit(0);

$form = 'F:\work\sinykk\templates';
$to = 'F:\work\sinykk\templates';

//mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding ] );

copyDir($form, $to);

function copyDir($dirSrc, $dirTo,$bianma='gb2312-gbk',$extlist=array('txt','js','php','inc','html','htm','css')) { 
	
	if(!file_exists($dirTo)) {      
		mkdir($dirTo);       
	}
	if($dir_handle=@opendir($dirSrc)) {        
		while($filename=readdir($dir_handle)) {   
			if($filename!="." && $filename!="..") {  
				$subSrcFile=$dirSrc."/".$filename;    
				$subToFile=$dirTo."/".$filename;    
					
				if(is_dir($subSrcFile)) {                  
					copyDir($subSrcFile, $subToFile);    
				}
				if(is_file($subSrcFile)) {   
					$ext = extname($subSrcFile);
					if(in_array($ext,$extlist)){
						$r = file_get_contents($subSrcFile);
						$r = F_iconv($r,$bianma);
						file_put_contents($subToFile,$r);
					}else{
						copy($subSrcFile, $subToFile);
					}
				}		
			}
		}
		closedir($dir_handle);      
	}
}


function F_iconv($P_strig,$P_types){
	switch(strtolower($P_types)){
		case 'gb2312-utf8' :{ $P_strig = iconv("GB2312","UTF-8",$P_strig); break; }
		case 'gb2312-gbk' :{ $P_strig = iconv("GB2312","GBK//ignore",$P_strig); break; }
		case 'gb2312-utf8-i' :{ $P_strig = iconv("GB2312","UTF-8//IGNORE",$P_strig); break; }
		case 'gb2312-utf8-t' :{ $P_strig = iconv("GB2312","UTF-8//TRANSLIT",$P_strig); break; }
		case 'utf8-gb2312' :{ $P_strig = iconv("UTF-8","GB2312",$P_strig); break; }
		case 'utf8-gb2312-i' :{ $P_strig = iconv("UTF-8","GB2312//IGNORE",$P_strig); break; }
		case 'utf8-gb2312-t' :{ $P_strig = iconv("UTF-8","GB2312//TRANSLIT",$P_strig); break; }
	}
	return $P_strig;
}


function extname($filename)     
{
	$pathinfo=pathinfo($filename);
	return strtolower($pathinfo['extension']);
}



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。