去除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 .= "<<

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;

}相关阅读:

java编程调用存储过程中得到新增记录id号的实现方法

IE下textarea默认不显示滚动条的实现代码

ThinkPHP模板引擎之导入资源文件方法详解

Mybatis添加Ehcache支持的方法

php修改指定文件后缀的方法

jquery实现表单输入时提示文字滑动向上效果

jquery选择器原理介绍($()使用方法)

Java字符串技巧之删除标点或最后字符的方法

Win7提示诊断策略服务未运行无法诊断检查网络解决方法

SSH+Jquery+Ajax框架整合

javascript Promise简单学习使用方法小结

Win7 64位系统没有超级终端软件的解决方法

解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)

分享两款带遮罩的jQuery弹出框

php去掉空格函数 防止注入,PHP_去除php注释和去除空格函数分享,虽然php5中已有php_strip_whitespace - phpStudy...相关推荐

  1. 去除空格和逗号的函数 php_去除php注释和去除空格函数分享

    虽然php5中已有php_strip_whitespace方法可以返回删除注释和空格后的PHP源码的功能,为了学习,这里为大家提供一个自己的方法,也可以去除代码中的空白和注释,代码如下: /** * ...

  2. php代码清除空格注解,去除php注释和去除空格函数分享

    虽然php5中已有php_strip_whitespace方法可以返回删除注释和空格后的PHP源码的功能,为了学习,这里为大家提供一个自己的方法,也可以去除代码中的空白和注释,代码如下: . 代码如下 ...

  3. php使用函数封装去除空格,去除php注释和去除空格函数分享_PHP教程

    虽然php5中已有php_strip_whitespace方法可以返回删除注释和空格后的PHP源码的功能,为了学习,这里为大家提供一个自己的方法,也可以去除代码中的空白和注释,代码如下: 复制代码 代 ...

  4. c语言trim函数去除全部空格,Excel Trim函数使用方法,含用三个去空格函数都删不了的空格实例...

    在 Excel 中,Trim函数用于去掉字符前后和字符之间的空格:当用于去掉字符前后空格时,只要是正常的空格,不管有多少个都能去掉,但用于去掉字符之间的空格时,会留下一个空格,不管字符是汉字还是英文. ...

  5. python中去除字符串中首尾空格的函数_Python中去除字符串首尾特定字符的函数:strip()...

    Python中strip()函数的作用是去除一个字符串前导和尾部的特定字符,并返回结果字符串. Python中strip()函数默认是删除字符串前导和尾部空格,通过设定参数,也可以去除字符串前导和尾部 ...

  6. VBA Trim()函数 去除头部和尾部的空格 - VBA函数学习笔记(二)

    本期学习的函数是Trim()函数. 要处理的字符串前面和后面都有讨厌的空格,必须要把他们去掉,每个单元格的内容才可以保持整齐. 因此我们需要使用Trim()函数. 语法 Trim(String) 参数 ...

  7. JS去除字符串左右两端的空格

    去除字符串左右两端的空格,在vbscript里面可以轻松地使用 trim.ltrim 或 rtrim,但在js中却没有这3个内置方法,需要手工编写.下面的实现方法是用到了正则表达式,效率不错,并把这三 ...

  8. php删除空标签_PHP如何去除Html所有标签、空格以及空白

    本文和大家分享一小段代码,主要和大家分享PHP如何去除Html所有标签.空格以及空白的方法,希望能帮助到大家.function cutstr_html($string, $sublen){ $stri ...

  9. java正则表达式去除xml标签之间的空格_HTML解析器——htmlparser2使用详解,换个姿势解析html和xml

    上一篇文章我们介绍了一个html/xml解析器--htmlparser,这篇文章我们介绍另外一个解析模块htmlparser2,后者是对前者的重构,同时对前者的API做了部分兼容. 用法简介 安装 c ...

最新文章

  1. django模板导入js,css等外部文件
  2. 《阿凡达》2020再度观看观后感
  3. CUDA内存类型memory
  4. 【Java多线程编程】选号程序
  5. layui移动端适配_移动端适配方案
  6. 媒资管理系统的应用与发展
  7. Ubuntu12.10中安装ati显卡驱动amd driver 13.1
  8. spring学习-ApplicationContext-spring上下文深入理解
  9. 什么手机用起来最烫手?2019上半年手机温度榜公布...
  10. region实现大纲效果
  11. spark 持久化机制入门
  12. C语言实现顺序栈的初始化进栈出栈读取栈顶元素
  13. Mac 安装谷歌浏览器驱动
  14. Java零基础学习记录09(飞机躲避炮弹游戏实现)
  15. 网易有道的面试也太难了吧,这都堪比我朋友三面的阿里了!
  16. 美貌智慧不可兼得?超模琳赛 斯科特变身程序员
  17. 18 Issues in Current Deep Reinforcement Learning from ZhiHu
  18. 更改极点为第一输入法
  19. qq视频聊天时的audio录音 Framework相关代码流程
  20. 【串口通信】K210与STM32串口通信、K210与OpenMV串口通信

热门文章

  1. java诺基亚nba,HMD 签约NBA 新秀劳里·马尔卡宁 为诺基亚手机品牌大使
  2. 今晚直播丨国产数据库入门:openGauss数据库的基本管理和SQL语句入门
  3. 直播预告:WLS/WAS故障基本分析介绍
  4. 耳语(Whisper) app数据泄露致9亿个私密自白曝光:该怎么办?
  5. 华为云GaussDB新产品特性亮相DTC2021,新品开源预告
  6. 云图说|威胁检测服务赐您“火眼金睛” ,让潜在威胁无处遁行
  7. 数据脱敏:数仓安全隐私保护见真招儿
  8. 优化了MYSQL大量写入问题,老板奖励了1000块给我
  9. 五年时间完成业务数字化转型,华为如今做得怎么样了?
  10. 漫谈边缘计算(二):各怀心事的玩家