如何计算Netbeans PHP项目的LOC?
我正在使用Windows 7上的Netbeans 7.0.1。
如何计算Netbeans PHP项目的LOC?
我正在使用Windows 7上的Netbeans 7.0.1。
我还没有找到在Netbeans中实现这个功能的方法(在任何操作系统上),但我猜你可以使用以下方式:
将这个小脚本保存在能够找到它的地方:(比如说“cntln.php”)
<?php
function countLinesInFile($fileInfo)
{
return count(file($fileInfo));
}
function countLinesInDir($directory, $filePattern)
{
$total = 0;
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory));
foreach($iterator as $fileInfo)
{
if (-1 < preg_match($filePattern, $fileInfo->getFileName()))
{
$total += countLinesInFile($fileInfo);
}
}
return $total;
}
function usage($argv)
{
printf("usage: php -q %s <directory> <filematch>\n", reset($argv));
printf(" - directory: path to the root directory of a project.\n");
printf(" - filematch: regex pattern for files to include.\n");
return 1;
}
if (count($argv) < 3)
{
die(usage($argv));
}
printf("%d\n", countLinesInDir($argv[1], $argv[2]));
可以在命令行(cmd.exe)中使用:
c:> php -q cntln.php "C:\projects\foo" "~\.php$~"
你可以进行一些小技巧,将其创建为快捷方式并放置在快速启动栏上或在其他工具中使用。
由于我现在是在SO文本框中输入,所以可能存在错误。
countLinesInFile
以仅查找不以“〜\ s +?(// |#)〜”开头的行,以获得更准确的读数而没有注释。 - Kris你可以使用ProjectCodeMeter来计算任何PHP项目的逻辑代码行数(它能识别注释和空行)