PHP Tokenizer 的学习笔记

jackxiang 2013-5-13 15:20 | |
在某个项目中需要分析 PHP 代码,分离出对应的函数调用(以及源代码对应的位置)。固然这使用正则也可以实现,但无论从效率还是代码复杂度方面考虑,这都不是最优的方式。

查询了 PHP 手册,发现实在 PHP 已经内置解析器的接口,那就是 PHP Tokenizer,这工具正是我想要的。使用 PHP Tokenizer 能简单、高效、正确的分析出 PHP 源代码的组成。

实例:



---------- 调试PHP ----------
1 - T_OPEN_TAG  <?php
1 - T_ECHO  echo
1 - T_WHITESPACE  
1 - T_CONSTANT_ENCAPSED_STRING  "string1"
1 - T_CONSTANT_ENCAPSED_STRING  "string2"
1 - T_WHITESPACE  
1 - T_CLOSE_TAG  ?>

输出完成 (耗时 0 秒) - 正常终止

参考:http://php.mirror.camelnetwork.com/manual/zh/ref.tokenizer.php

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/6351/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!

评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]