首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP zend字节码参考?

PHP zend字节码参考?
EN

Stack Overflow用户
提问于 2013-12-11 14:39:27
回答 1查看 795关注 0票数 7

有没有描述php zend vm字节码指令结构的文档??

php website中有操作码的编号和名称,但我想知道更详细的结构,如操作数大小或语法。

是否有任何zend vm字节码文档,如flash字节码文档、英特尔指令参考手册或java字节码手册??

提前谢谢你

EN

回答 1

Stack Overflow用户

发布于 2018-08-06 21:49:46

详细信息可以直接在Zend VM的源代码中找到:

https://github.com/php/php-src/blob/master/Zend/zend_vm_gen.php

对于每个Zend VM操作,都有一个本机C函数要运行,并为其提供0、1或2个操作数。完成操作后,它会给出一个结果以及任何其他信息。此外,该操作还保存有关传入的任何操作数的类型、结果类型和操作码的信息。

(来源:https://x-team.com/blog/learn-about-php-opcodes)

但是,理解任何特定的用例可能非常困难。一种可能的解决方案是安装Vulcan Logic Disassembler (vld)扩展。vld挂钩Zend引擎并转储脚本的所有操作码。

(来源:https://ctors.net/2015/09/11/php_opcodes)

通过这个扩展,可以转储操作码和PHP脚本的内部表示。虽然仍处于测试阶段,但2016年发布的version 0.14.0也支持PHP7.0和7.1。

在作者的Github库中可以找到最新的开发源代码和安装说明:

https://github.com/derickr/vld

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20512238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档