token_get_all()函数
token_get_all
(PHP 4 >= 4.2.0, PHP 5)
token_get_all — 将提供的源码按 PHP 标记进行分割,可以用作php源代码的压缩,会按照固定的分解方法,分解php代码成不同的部分
说明
$source )token_get_all() 解析提供的 source 源码字符,然后使用 Zend 引擎的语法分析器获取源码中的 PHP 语言的解析器代号
解析器代号列表见解析器代号列表, 或者使用 token_name() 翻译获取这个代号的字符串表示.
参数
source-
需要解析的 PHP 源码.
返回值
array
<?php
$tokens = token_get_all('<?php echo; ?>'); /* => array(
array(T_OPEN_TAG, '<?php'),
array(T_ECHO, 'echo'),
';',
array(T_CLOSE_TAG, '?>') ); */ /* Note in the following example that the string is parsed as T_INLINE_HTML
rather than the otherwise expected T_COMMENT (T_ML_COMMENT in PHP <5).
This is because no open/close tags were used in the "code" provided.
This would be equivalent to putting a comment outside of <?php ?> tags in a normal file. */
$tokens = token_get_all('/* comment */'); // => array(array(T_INLINE_HTML, '/* comment */'));
?>
token_get_all()函数的更多相关文章
- 深入理解PHP内核(四)概览-PHP脚本的执行
本文链接:http://www.orlion.ml/236/ 下面以php命令行程序为例解释PHP脚本是怎么被执行的.例如如下脚本: <?php $str = 'hello world'; ec ...
- php判断图片是否存在的几种方法
在我们日常的开发中,经常需要用到判断图片是否存在,存在则显示,不存在则显示默认图片,那么我们用到的判断有哪些呢?今天我们就来看下几个常用的方法: 1.getimagesize()函数 getimage ...
- PHP 安全三板斧:过滤、验证和转义之转义篇 & Blade模板引擎避免XSS攻击原理探究
PHP 转义 实现 把输出渲染成网页或API响应时,一定要转义输出,这也是一种防护措施,能避免渲染恶意代码,造成XSS攻击,还能防止应用的用户无意中执行恶意代码. 我们可以使用前面提到的 htmlen ...
- webshell检测方法归纳
背景 webshell就是以asp.php.jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门.黑客在入侵了一个网站后,通常会将asp或php后门文件与网站服务器WEB ...
- PHP7 源码整体框架
一.PHP7语言执行原理 常用的高级语言有很多种,根据运行的方式不同,大体分为两种:编译型语言和解释型语言. 编译是指在应用源程序执行之前,就将程序源代码“翻译”成汇编语言,然后进一步根据软硬件环境编 ...
- PHP7函数大全(4553个函数)
转载来自: http://www.infocool.net/kb/PHP/201607/168683.html a 函数 说明 abs 绝对值 acos 反余弦 acosh 反双曲余弦 addcsla ...
- Web端PHP代码函数覆盖率测试解决方案
1. 关于代码覆盖率 衡量代码覆盖率有很多种层次,比如行覆盖率,函数/方法覆盖率,类覆盖率,分支覆盖率等等.代码覆盖率也是衡量测试质量的一个重要标准,对于黑盒测试来说,如果你不确定自己的测试用例是否真 ...
- rips中如何使用PHP虚拟机自带函数--token_get_all
这两天在看rips源码,发现,它在审计php代码时调用了php虚拟机自带的token_get_all此函数. 这一函数会将php源码按照内置的规则进行归纳,并输出成数组格式. 如: <?php ...
- PHP类和函数注释大全
每次要用PHP的某个功能的时候,都要去查一下,于是决定将PHP所有类和函数都整理出来,加上注释 大致实现 将php.jar文件解压,取出目录stubs 将stubs中的所有php文件中的注释去掉,并做 ...
随机推荐
- IBM Websphere MQ常用命令及常见错误
MQSC: MQ Script Command (不区分大小写) 注明: 下面命令行中的队列管理器名字,队列名字分别用QmgrName, QName替代. 下面标蓝色的,都需要根据实际配置更改! 打 ...
- jetty jndi数据源
applicationContext.xml <?xml version="1.0" encoding="utf-8"?> <beans de ...
- 简单记录下HTTPS中的SSL
大概思路 大概思路是混合加密的方式,即对称加密方式混合非对称加密方式. 非对称加密会更加安全,功能也更强大,但他复杂而且速度慢. 对称加密速度快,但要保证这个公共密钥的正确性和真实性. 所以两者结合, ...
- fiddler手机抓包,支持前端代码调试
手机用fiddler抓包 电脑最好是笔记本,这样能和手机保持统一局域网内:其他不多说,直接说步骤了. 一.对PC(笔记本)参数进行配置 1. 配置fiddler允许监听到https(fiddle ...
- plsql过期注册
Product Code:4t46t6vydkvsxekkvf3fjnpzy5wbuhphqzserial Number:601769password:xs374ca 打开plsql工具 点击注册即可
- IDEA2017 配置Maven
配置本地仓库位置 配置一下Maven的本地仓库路径,首先找到解压Maven的目录,找到conf -> settings.xml这个配置文件打开. 打开settings.xml 配置文件,选一个本 ...
- ServletContext--HttpServletResponse--web项目执行流程
一.ServletContext 接口(javax.servlet) 定义:public interface ServletContext 原理: Tomcat启动的时候,需要识别webapp ...
- Ubuntu 配置IP地址方法
接到一客户的服务器,开机已启动发现是Ubuntu系统,当时有点郁闷了,心想没有配置过ubuntu系统,这客户还在旁边了,心里有点紧张了,于是开始上网寻找各种方法配置,最终将IP配置好,给客户上架调试通 ...
- Android Error:Could not run build action using Gradle installation
错误内容: Error:Could not run build action using Gradle installation ‘D:\AndroidStudio\AS2.x\gradle\grad ...
- BUG数量和项目成本
这篇文章,不是讨论怎么提升程序员的能力避免BUG,因为程序员的能力不足造成的BUG,短期是无法避免的.这里主要探讨的是因为程序员疏忽大意和不良的开发习惯,产生的低级BUG,对项目成本影响. 首先了解下 ...