DDR爱好者之家 Design By 杰米
一个可以找出源代码中所有中文的工具
填写需要查找的路径$sf即可。
功能
1 找出所有中文
2 忽略注释语句中的中文
3 可添加需要忽略的文件和文件夹
4 生成日志文件
如果您正发愁为自己的软件更新语言包
请使用此工具。
我的例子:
http://127.0.0.1/tools/searchcn.php
http://127.0.0.1/tools/cnlog.txt
复制代码 代码如下:
<?php
set_time_limit(0);
ob_implicit_flush();
//注释格式
$remark = array(
array('//debug', "\r\n")
, array('/**', '*/')
, array('/*debug', '*/')
, array('/*note', '*/')
, array('//note', "\r\n")
);
//以下目录和文件不被查询
$filter = 'forumdata|config\.inc\.php|debug|test|readme|utilities|upgrade|\.tpl.php|index\.htm|\.lang.php';
//项目目录
$sf = 'd:\\data\\labs\\develop\\dzhead\\';
//日志目录
$logname = 'cnlog.txt';
$langfile = 'lang.php';
$log = fopen($logname, 'w');
fclose($log);
$lf = fopen($langfile, 'wb');
fwrite($lf, "\r\n\r\n\t'spilt' => '----------------------------------------------------',");
fclose($lf);
$lf = fopen($langfile, 'ab');
$ptag = '\\';
findfile($sf);
fwrite($lf, "\r\n);\r\n\r\n?>");
fclose($lf);
function findfile($sf){
global $ptag, $logname, $filter, $lf;
$log = fopen($logname, 'ab');
global $remark;
if(is_dir($sf)) {
if($dh = opendir($sf)) {
while(($file = readdir($dh)) !== false) {
if($file == '.' || $file == '..') {
continue;
} elseif(filetype($sf.$file) == 'dir') {
findfile($sf.$file.$ptag);
} elseif((preg_match('/\.php$/', $file) || preg_match('/\.htm$/', $file)) && !preg_match('/('.$filter.')/', $sf.$file)) {
$sfp = fopen($sf.$file, 'rb');
$buf = fread($sfp, filesize($sf.$file));
fclose($sfp);
foreach($remark as $v) {
$data = '';
while(count($strcut = explode($v[0], $buf, 2)) > 1) {
$data .= $strcut[0];
if(($strcut = explode($v[1], $strcut[1], 2)) > 1){
$buf = $strcut[1];
} else {
$buf = $strcut[0];
break;
}
}
$data .= $strcut[0];
$buf = $data;
}
$data = $buf;
$lines = 0;
$cn = $str = '';
$cns = 0;
$ldata = "\r\n\t'".str_replace('.', '_', $file)."' => '";
for($i = 0; $i < strlen($data); $i++){
$c = ord($data{$i});
if($c == 0x0A || $data{$i+1} == ''){
$lines++;
if(!empty($cn)){
$ldata .= "',";
$ldata = str_replace("\r\n\t'".str_replace('.', '_', $file)."' => '',", '', $ldata);
fwrite($lf, $ldata);
$cn = "\r\n$lines:".$cn;
$str .= $cn;
$cn = '';
$ldata = "\r\n\t'".str_replace('.', '_', $file)."' => '";
}
} elseif($c >= 0x81 && $c <= 0xFE) {
$c = ord($data{++$i});
if($c >= 0x40 && $c <= 0xFE) {
$cn .= $data{$i-1}.$data{$i};
$ldata .= $data{$i-1}.$data{$i};
while(($c = ord($data{++$i})) != 0x3C && $c != 0x0A && $c != 0x0D && $c != 0x27 && $c != 0x3E && $c != 0x3B && $c != 0x22 && $c != 0x3D && $c < 0x81) {
$space .= chr($c);
}
$i--;
if(ord($data{$i+1}) < 0x81) {
$cns++;
$cn .= '$';
$ldata .= "',\r\n\t'".str_replace('.', '_', $file)."' => '";
} else {
$cn .= $space;
}
$space = '';
}
}
}
if($str != '') {
fwrite($log, "\n--".$sf.$file."----------------------- (共 $cns 处)");
echo "{$sf}$file (共 $cns 处)<br>";
ob_flush();flush();
$cns = 0;
}
fwrite($log, $str);
$str = '';
}
}
}
}
fclose($log);
}
?>
填写需要查找的路径$sf即可。
功能
1 找出所有中文
2 忽略注释语句中的中文
3 可添加需要忽略的文件和文件夹
4 生成日志文件
如果您正发愁为自己的软件更新语言包
请使用此工具。
我的例子:
http://127.0.0.1/tools/searchcn.php
http://127.0.0.1/tools/cnlog.txt
复制代码 代码如下:
<?php
set_time_limit(0);
ob_implicit_flush();
//注释格式
$remark = array(
array('//debug', "\r\n")
, array('/**', '*/')
, array('/*debug', '*/')
, array('/*note', '*/')
, array('//note', "\r\n")
);
//以下目录和文件不被查询
$filter = 'forumdata|config\.inc\.php|debug|test|readme|utilities|upgrade|\.tpl.php|index\.htm|\.lang.php';
//项目目录
$sf = 'd:\\data\\labs\\develop\\dzhead\\';
//日志目录
$logname = 'cnlog.txt';
$langfile = 'lang.php';
$log = fopen($logname, 'w');
fclose($log);
$lf = fopen($langfile, 'wb');
fwrite($lf, "\r\n\r\n\t'spilt' => '----------------------------------------------------',");
fclose($lf);
$lf = fopen($langfile, 'ab');
$ptag = '\\';
findfile($sf);
fwrite($lf, "\r\n);\r\n\r\n?>");
fclose($lf);
function findfile($sf){
global $ptag, $logname, $filter, $lf;
$log = fopen($logname, 'ab');
global $remark;
if(is_dir($sf)) {
if($dh = opendir($sf)) {
while(($file = readdir($dh)) !== false) {
if($file == '.' || $file == '..') {
continue;
} elseif(filetype($sf.$file) == 'dir') {
findfile($sf.$file.$ptag);
} elseif((preg_match('/\.php$/', $file) || preg_match('/\.htm$/', $file)) && !preg_match('/('.$filter.')/', $sf.$file)) {
$sfp = fopen($sf.$file, 'rb');
$buf = fread($sfp, filesize($sf.$file));
fclose($sfp);
foreach($remark as $v) {
$data = '';
while(count($strcut = explode($v[0], $buf, 2)) > 1) {
$data .= $strcut[0];
if(($strcut = explode($v[1], $strcut[1], 2)) > 1){
$buf = $strcut[1];
} else {
$buf = $strcut[0];
break;
}
}
$data .= $strcut[0];
$buf = $data;
}
$data = $buf;
$lines = 0;
$cn = $str = '';
$cns = 0;
$ldata = "\r\n\t'".str_replace('.', '_', $file)."' => '";
for($i = 0; $i < strlen($data); $i++){
$c = ord($data{$i});
if($c == 0x0A || $data{$i+1} == ''){
$lines++;
if(!empty($cn)){
$ldata .= "',";
$ldata = str_replace("\r\n\t'".str_replace('.', '_', $file)."' => '',", '', $ldata);
fwrite($lf, $ldata);
$cn = "\r\n$lines:".$cn;
$str .= $cn;
$cn = '';
$ldata = "\r\n\t'".str_replace('.', '_', $file)."' => '";
}
} elseif($c >= 0x81 && $c <= 0xFE) {
$c = ord($data{++$i});
if($c >= 0x40 && $c <= 0xFE) {
$cn .= $data{$i-1}.$data{$i};
$ldata .= $data{$i-1}.$data{$i};
while(($c = ord($data{++$i})) != 0x3C && $c != 0x0A && $c != 0x0D && $c != 0x27 && $c != 0x3E && $c != 0x3B && $c != 0x22 && $c != 0x3D && $c < 0x81) {
$space .= chr($c);
}
$i--;
if(ord($data{$i+1}) < 0x81) {
$cns++;
$cn .= '$';
$ldata .= "',\r\n\t'".str_replace('.', '_', $file)."' => '";
} else {
$cn .= $space;
}
$space = '';
}
}
}
if($str != '') {
fwrite($log, "\n--".$sf.$file."----------------------- (共 $cns 处)");
echo "{$sf}$file (共 $cns 处)<br>";
ob_flush();flush();
$cns = 0;
}
fwrite($log, $str);
$str = '';
}
}
}
}
fclose($log);
}
?>
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2024年11月25日
2024年11月25日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]