您的位置: 首页 > 软件教程 > 去除PHP代码中的空白和注释

去除PHP代码中的空白和注释

7.8分
出处:三联 时间:2014-03-20

您可能感兴趣的话题: 空白和注释  

核心提示:PHP内置了一个php_strip_whitespace方法用于读取php文件并去除代码中的空白和注释,但不支持直接读取内容去除空白和注释,下面的方法则可以支持读取字符串内容,并且ThinkPHP框架内置了该方法。

  PHP内置了一个php_strip_whitespace方法用于读取php文件并去除代码中的空白和注释,但不支持直接读取内容去除空白和注释,下面的方法则可以支持读取字符串内容,并且ThinkPHP框架内置了该方法。

  /**

  * 去除代码中的空白和注释

  * @param string $content 代码内容

  * @return string

  */

  function strip_whitespace($content) {

  $stripStr = '';

  //分析php源码

  $tokens = token_get_all($content);

  $last_space = false;

  for ($i = 0, $j = count($tokens); $i < $j; $i++) {

  if (is_string($tokens[$i])) {

  $last_space = false;

  $stripStr .= $tokens[$i];

  } else {

  switch ($tokens[$i][0]) {

  //过滤各种PHP注释

  case T_COMMENT:

  case T_DOC_COMMENT:

  break;

  //过滤空格

  case T_WHITESPACE:

  if (!$last_space) {

  $stripStr .= ' ';

  $last_space = true;

  }

  break;

  case T_START_HEREDOC:

  $stripStr .= "<<

  break;

  case T_END_HEREDOC:

  $stripStr .= "THINK; ";

  for($k = $i+1; $k < $j; $k++) {

  if(is_string($tokens[$k]) && $tokens[$k] == ';') {

  $i = $k;

  break;

  } else if($tokens[$k][0] == T_CLOSE_TAG) {

  break;

  }

  }

  break;

  default:

  $last_space = false;

  $stripStr .= $tokens[$i][1];

  }

  }

  }

  return $stripStr;

  }

网友评论

精品软件课程
更多 >
photoshop教程让你从入门到精通,从新... [详细]
快播播放器(Qvod Player)是一款基... [详细]
Word是由Microsoft公司出版的文字... [详细]
《植物大战僵尸》是一款极富策略性的小游戏,可... [详细]
Excel是office的重要组成部分。多特... [详细]