加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

在PHP递归统计系统中代码行数

发布时间:2022-06-26 10:36:17 所属栏目:PHP教程 来源:互联网
导读:本文实例为大家分享了PHP递归统计系统中代码行数的具体代码,供大家参考,具体内容如下。 1、统计代码行数,必然用到的两个关键的知识点:函数递归以及文件读
  本文实例为大家分享了PHP递归统计系统中代码行数的具体代码,供大家参考,具体内容如下。
 
  1、统计代码行数,必然用到的两个关键的知识点:函数递归以及文件读取。
 
  函数递归无非就是在函数的代码中调用本身的函数名,以此形成递归循环
 
  function A($param){
    if('condition')
      A($param_son);
    else
      return $result;
  }
  在文件读取中,有很多读取方式,采用了file()读取,按行读取,形成一个数组。
 
  $file_open = file($file);
 
  2、完整的代码
 
  <?php
  /**
   * Created by PhpStorm.
   * User: kung
   * Date: 2015/10/16
   * Time: 16:12
   */
     
  function get_file_dir($dir){
    $dir_arr = scandir($dir);
    $file_arr = array();
    foreach($dir_arr as $dir_one){
      if(is_dir($dir.DIRECTORY_SEPARATOR.$dir_one) && $dir_one != '.' && $dir_one != '..'){
        $file_arr_son = get_file_dir($dir.DIRECTORY_SEPARATOR.$dir_one);
        $file_arr = array_merge($file_arr,$file_arr_son);
      }else{
        if($dir_one == '.' || $dir_one == '..' || strpos($dir_one,'.php') <= 0)
          continue;
        $file_arr[] = $dir.DIRECTORY_SEPARATOR.$dir_one;
      }
    }
    return $file_arr;
  }
     
  $dir = dirname(__FILE__);
  $file_arr = get_file_dir($dir);
  $count = 0; //计算换行
  $clean_count = 0;//不计算换行
  foreach($file_arr as $file){
    $file_open = file($file);
    $line_count = count($file_open);
    $count += $line_count;
    foreach($file_open as $file_val){
      if($file_val == PHP_EOL)/*if(nl2br($file_val) == '<br />'想通过这种方式,但是发现不可行,用var_dump(nl2br($file_val))进行打印,复制才可以*/
        continue;
      $clean_count++;
     
    }
  }
  echo $count.'-----'.$clean_count;。
 

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读