php杂项函数(MISC)之__halt_compiler()
这个是我目前没有用过的一个函数,大多数人都没有必要使用这个函数,所以很少人了解他的用处。今天在*上翻阅了一些相关的知识,分享给大家。 先看官方解释: 中断编译器的执行。常用于在PHP脚本内嵌入数据,类似于安装文件。 可以通过常量 __COM
这个是我目前没有用过的一个函数,大多数人都没有必要使用这个函数,所以很少人了解他的用处。今天在*上翻阅了一些相关的知识,分享给大家。
先看官方解释:
中断编译器的执行。常用于在PHP脚本内嵌入数据,类似于安装文件。
可以通过常量 __COMPILER_HALT_OFFSET__ 获取数据开始字节所在的位置,且该常量仅被定义于使用了__halt_compiler的文件
再看两端代码和他们的运行结果:
vagrant@precise64:/var/www/test/misc$ cat exit.php看到区别了吧!
exit()和__halt_compiler()方法都会退出代码的执行,但是使用exit()的文件会解释到文件的结束,如果遇到语法错误就会报错,__halt_compiler()则不会解释后面的代码。所以你可以再__halt_compiler()后面放任何你想放的东西(比如你银行卡账号和密码)而不用考虑语法的问题。在__halt_compiler()出现的文件里面还会产生一个变量__COMPILER_HALT_OFFSET__,值是代码中断的位置的下一个字符,就是官方所说的”数据开始字节所在的位置”;
请看下面的代码:vagrant@precise64:/var/www/test/misc$ cat halt_compile.php使用fseek方法直接移动到“the installation data (eg. tar, gz, PHP, etc.)”开始的位置,然后读取里面的内容。
原文地址:php杂项函数(MISC)之__halt_compiler(), 感谢原作者分享。
下一篇: 冒泡排序python实现
推荐阅读
-
PHP计划任务之关闭浏览器后仍然继续执行的函数
-
PHP常用函数之base64图片上传功能详解
-
PHP常用函数之格式化时间操作示例
-
PHP常用函数之根据生日计算年龄功能示例
-
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
-
php数组函数序列之array_splice() - 在数组任意位置插入元素
-
PHP字符串函数系列之nl2br(),在字符串中的每个新行 ( ) 之前插入 HTML 换行符br
-
PHP之uniqid()函数用法
-
php学习笔记之 函数声明(二)
-
PHP字符串函数系列之nl2br(),在字符串中的每个新行 ( ) 之前插入 HTML 换行符br