PHP 代码行数统计

<?php
// 行数
$line = 0;
// 需要统计的文件类型
$arr = array("php", "html", "css", "js");
// 过滤的文件夹
$filtering = array("ui", "dist", "style", "lib", "dist", "css","api");
// 遍历目录
function bl_scandir($dirname) {
    global $arr;
    global $filtering;
    global $line;
    // 扫描目录下的文件和目录
    $dirArr = scandir($dirname);
    // 遍历目录
    foreach($dirArr as $v) {
        //组合文件或文件夹的路径
        $filename = $dirname.''.$v;
        // . 表示本层目录, .. 表示上层目录
        if ($v != '.' && $v != '..') {
            // 判断是不是一个目录,是的话递归调用
            if (is_dir($filename)) {
                // 过滤不需要统计的目录
                if (in_array($v, $filtering)) {
                    continue;
                }
                bl_scandir($filename);
            } else {
                // 截取后缀名
                $extension = pathinfo($v,PATHINFO_EXTENSION);
                // 比较后缀名是否在统计的文件类型里
                if (in_array($extension, $arr)) {
                    // 打开文件
                    $fp = fopen($filename, "r");
                    // 读取行数
                    while(stream_get_line($fp,8192,"n")) {
                        $line ++;
                    }
                    // 关闭文件
                    fclose($fp);
                }
            }
        }
    }
}
// 执行方法,参数为项目路径
bl_scandir("E:DCCst");
// 打印行数
echo $line;
?>
© Заявление об авторском праве
THE END
Поддерживай, если хочешь.
Похвалить0Высокая оценка Поделиться
Соответствующие рекомендации
Замечания Украсть диван
头像
Добро пожаловать, чтобы оставить ценные идеи!
提交
头像

Прозвище

取消
ПрозвищеЛицоКодФотографии

    Нет комментариев