去除php注释和去除空格函数分享
更新时间:2014年03月13日 10:12:15 作者:
这篇文章主要介绍了去除php注释和去除空格函数,php5中已提供相同功能的函数,这里只为学习PHP,需要的朋友可以参考下
虽然php5中已有php_strip_whitespace方法可以返回删除注释和空格后的PHP源码的功能,为了学习,这里为大家提供一个自己的方法,也可以去除代码中的空白和注释,代码如下:
复制代码 代码如下:
/**
* 去除代码中的空白和注释
* @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 .= "<<<THINK\n";
break;
case T_END_HEREDOC:
$stripStr .= "THINK;\n";
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;
}
相关文章
php安装xdebug/php安装pear/phpunit详解步骤(图)
PHP环境中安装pear、phpunit以及xdebug全攻略,大家参考使用吧2013-12-12laravel-admin表单提交隐藏一些数据,回调时获取数据的方法
今天小编就为大家分享一篇laravel-admin表单提交隐藏一些数据,回调时获取数据的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-10-10Laravel最佳分割路由文件(routes.php)的方式
本文是一篇关于Laravel分割路由文件(routes.php)的最佳方式教程文章,内容介绍的很详细,学习Laravel的小伙伴可以参考学习。2016-08-08
最新评论