PHP统计代码行数的小代码

yipeiwu_com6年前Python基础

本文实例为大家分享了PHP统计代码行数的具体代码,供大家参考,具体内容如下

想统计一下项目中一共有多少行代码,结果没找到什么好的工具,就自己写了一个。

效率不怎么样。

<?php
/**
 * Created by PhpStorm.
 * User: luyanfeng
 * Date: 16/7/12
 * Time: 下午1:45
 */
 
/**
 * @param $dir
 * @return int
 */
function countLine($dir)
{
 $count = 0;
 if (is_dir($dir)) {
 $files = scandir($dir);
 foreach ($files as $file) {
 if ($file[0] == '.') continue;
 $file = $dir . "/" . $file;
 if (is_dir($file)) {
 $count += countLine($file . "/");
 } else {
 if (strpos($file, ".php"))
  $count += count(file($file));
 }
 }
 } else {
 $count += count(file($dir));
 }
 return $count;
}
 
if (count($argv) < 2) {
 echo "lack params\n";
 die;
}
$dir = $argv[1];
echo countLine($dir) . "\n";

在命令行中运行,参数为要查询的文件或者目录的绝对路径。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

win10安装tensorflow-gpu1.8.0详细完整步骤

win10安装tensorflow-gpu1.8.0详细完整步骤

在整个安装的过程中也遇到了很多的坑,故此做个记录,争取下次不再犯! 我的整个基本配置如下: 电脑环境如下:win10(64位)+CPU:E5-2603 +GPU:GTX 1070 需要安...

python程序封装为win32服务的方法

本文实例为大家分享了python程序封装为win32服务的具体代码,供大家参考,具体内容如下 # encoding=utf-8 import os import sys import...

Python线程同步的实现代码

本文介绍Python中的线程同步对象,主要涉及 thread 和 threading 模块。 threading 模块提供的线程同步原语包括:Lock、RLock、Condition、...

Ubuntu18.04下python版本完美切换的解决方法

Ubuntu18.04下python版本完美切换的解决方法

ubuntu18.04版本,python版本python2.7,python3.5,python3.6 因为安装一些库会安装到python3.6上,而默认使用的是python2.7,使用...

CentOS6.5设置Django开发环境

今天在我的Centos6.5机器上安装 Django 开发环境,在安装完使用 “django-admin.py startproject myapp” 创建应用的时候报了下面的错误...