计算所有html、css、js和php文件目录中的所有行数

计算所有html、css、js和php文件目录中的所有行数,php,file,count,Php,File,Count,我目前得到了以下代码 glob(*.php) foreach ($files as $files..) $content = file_get_contents($file); $cnt=count(explode("\n", $content)) $linecount += $cnt; echo $linecount 我有一个文件夹,里面有.css、.html、.js和.php文件。现在我想数一数我在文件中得到的所有代码行。我该怎么做 我在这里找到了这个 但它并没有真正帮助我,因为它看起来就

我目前得到了以下代码

glob(*.php)
foreach ($files as $files..)
$content = file_get_contents($file);
$cnt=count(explode("\n", $content))
$linecount += $cnt;
echo $linecount
我有一个文件夹,里面有.css、.html、.js和.php文件。现在我想数一数我在文件中得到的所有代码行。我该怎么做

我在这里找到了这个


但它并没有真正帮助我,因为它看起来就像你在Linux shell中做的那样。有什么想法吗?

此脚本统计指定目录中所有文件中的所有行:

$count = 0;
$handle = opendir('./'); //Path to your directory

while (false !== ($file = readdir($handle))) {
    if($file != '.' && $file != '..' && !is_dir($file)) {
        $content = file($file);
        $count = $count + count($content);
    }
}

echo 'Lines '.$count;

我们已经看到了像
include.php
这样的文件夹名称,所以您当前的方法无法工作。您还需要检查子文件夹,因此我建议您使用
recursivegexiterator

示例

$dir = new RecursiveDirectoryIterator(__DIR__, FilesystemIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator(
         new RecursiveFileFilterIterator($dir, "/\.(css|html|js|php)$/"));

echo iterator_count($files);
使用的类

class RecursiveFileFilterIterator  extends RecursiveRegexIterator {
    public function accept() {
        return parent::accept() && is_file($this->current());
    }
}