nbsp; $fstats = feof($fh);
for ($i=0;$i<$fblen;$i++) { // 分析文件内容
if (!$fstats&&$i+5>$fblen) break; // 文件未完全读取时临近缓冲区读取完成读取下一块文件内容
$j = substr($fbuffer, $i, 2);
$k = $j[0];
if ($j=="/*"&&!$in_dq&&!$in_sq&&!$in_lc) { // 不在字符串和行注释中,块注释开始
$in_bc = TRUE;
$i++;
} elseif ($j=="*/"&&$in_bc) { // 块注释结束
$in_bc = FALSE;
$i+=2;
} elseif ($j=="//"&&!$in_dq&&!$in_sq&&!$in_bc) { // 行注释开始
$in_lc = TRUE;
$i++;
} elseif ($in_lc&&($k=="\r"||$k=="\n")) $in_lc = FALSE; // 行注释结束
elseif ($j=="\\\\"||$j=="\\\""||$j=="\\''") { // 转义字符
$tbuffer .= $j;
$i++;
&n