当前位置: 首页 > 软件库 > 程序开发 > 常用工具包 >

X-Ray

PHP 引擎编译器钩子
授权协议 MIT
开发语言 C/C++ PHP
所属分类 程序开发、 常用工具包
软件类型 开源软件
地区 不详
投 递 者 卫嘉泽
操作系统 Linux
开源组织
适用人群 未知
 软件概览

X-Ray 运行定义Zend 引擎 include()require() and eval() 钩子:

使用方法:

// adding a compiler hook:
xray\set_compiler_hook(function(string $source, string $filename = null) : string {
    if ($filename === null)  {
        // here we intercept source included through eval()
        // do transformations on $source and return the new $source to be included        
    }
    else {
        // here we intercept source included from a *.php file
        // do transformations on $source and return the new $source to be included
    }
});

// removing the compiler hook:
$hook = xray\restore_compiler_hook();

安装方法

git clone https://github.com/marcioAlmada/xray
cd xray
phpize
./configure
make
sudo make install

最后在你的 /etc/php.ini 中增加 extension=xray.so 

  • 1.什么是x-ray? 波长在10-12~10-8m的光称为X光。 2.产生x-ray的几种方式。 一:特征辐射 当电子束与标靶的原子碰撞时,原子内层电子被打出,外层电子往内递补,而由高能阶转变成低能阶的状态,能量便藉由X-ray的方式产生,此X光称为特征辐射。此时,若撞掉的K层电子由L层的电子递补而产生的X-ray称为Kα;若是由M层电子递补则称Kβ。 二:连续辐射 当以高电压加速之电子束撞击阳

 相关资料
  • null 有人有类似问题的经验吗?在我看来,这应该是很常见的,如果我必须完全自己实现它,那就奇怪了。我在这里发现了一些关于编排和编排系统理论的问题(比如这个和这个),但没有发现实现它的工具的真实示例。此外,我认为我们并不完全是在谈论微服务--任务不是延长和繁重的,它们只是很多,在后台运行,执行许多类型的短任务。我不会为每种工作类型创建服务。 我现在也不是在寻找云和容器服务--据我所知,部署是一个不

  • 编译器 编译器将用一种语言编写的代码转换为另一种语言,而无需更改程序的含义。还期望编译器应该使目标代码高效且在时间和空间方面得到优化。 编译器设计原理提供了翻译和优化过程的深入视图。编译器设计涵盖了基本的转换机制以及错误检测与恢复。它包括词法,语法和语义分析作为前端,以及代码生成和优化作为后端。 为什么要学习编译器设计? 计算机是软件和硬件的平衡组合。硬件只是机械设备的一部分,其功能由兼容的软件控

  • 一、Azkaban 源码编译 1.1 下载并解压 Azkaban 在 3.0 版本之后就不提供对应的安装包,需要自己下载源码进行编译。 下载所需版本的源码,Azkaban 的源码托管在 GitHub 上,地址为 https://github.com/azkaban/azkaban 。可以使用 git clone 的方式获取源码,也可以使用 wget 直接下载对应 release 版本的 tar.g

  • 所以当我不使用我的maven实现时,我在编译我的应用程序时遇到了麻烦。它将编译没有任何麻烦与maven-gwt-plugin。 我收到的错误表示生成器无法获取其请求的类信息: 显然,该类存在并在maven实现中工作。我不明白为什么在使用eclipse“Java应用程序”运行配置进行标准构建时它不起作用。以下是我的跑步配置的设置: 有人知道这是怎么回事吗?

  • 我一直在尝试React钩子,它们似乎可以简化存储状态之类的事情。然而,他们似乎用魔法做了很多事情,我找不到一篇关于他们如何实际工作的好文章。 第一件看起来很神奇的事情是,调用像useState()这样的函数是如何在每次调用setXXX方法时导致函数组件的重新渲染的? 当功能组件甚至不具备在挂载/卸载上运行代码的能力时,像use效应()这样的东西是如何伪造组件的? useContext()实际上是如

  • 词法分析器 语法分析器 语义分析及中间代码生成 代码优化 代码生成

  • 在你制作安装程序时创建了你的脚本后所要做的第二件事就是编译你的脚本。MakeNSIS.exe 就是 NSIS 编译器。它会载入你的脚本,解析并创建你的安装程序。 要编译你需要在你的 .nsi 文件上点右键并选择“Compile NSIS Script”或“Compile NSIS Script (Choose Compressor)”。这样将会使用 MakeNSISw 来引导并调用 MakeNSI