zl程序教程

您现在的位置是:首页 >  后端

当前栏目

PHP文件去掉PHP注释空格的函数分析(PHP代码压缩)

PHP文件代码 函数 分析 压缩 注释 空格
2023-06-13 09:15:02 时间
最近我从thinkphp的‘RUNTIME_ALLINONE"借鉴到经验:不怕缓存多,就怕调用乱,索性将所有常用的文件全部合并成一个文件,岂不美哉。。。
复制代码代码如下:

functionstrip_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注释
               caseT_COMMENT:
               caseT_DOC_COMMENT:
                   break;
               //过滤空格
               caseT_WHITESPACE:
                   if(!$last_space){
                       $stripStr.="";
                       $last_space=true;
                   }
                   break;
               default:
                   $last_space=false;
                   $stripStr.=$tokens[$i][1];
           }
       }
   }
   return$stripStr;
}

该自定义函数有效解决了php_strip_whitespace系统内置去注释空格函数不能正确理解<<<EOT(heredoc)的问题
使用方法
复制代码代码如下:

$str=strip_whitespace("<?php".$str);

前面一定要拼接这个,我也搞不懂,不拼接的话执行生成的结果是错误的结果
php_strip_whitespace
stringphp_strip_whitespace(string$filename)
如果仅仅是单文件并且没有heredoc的话,还是建议使用快捷的php_strip_whitespace函数