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/<project>=GBK
[/code]



<?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']);
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值