PHP7 部分opcode的含义?
在PHP7中增加了新的opcode,在php.net上查不到,我去看了php7的源码,但是很难理解,所以请教大神们几个opcode的含义和操作,具体opcode是以下几个:
1.ZEND_FAST_CONCAT ,看了源码发现这个比之前的ZEND_CONCAT多了很多代码,但是具体功能没看出什么区别。ZEND_FAST_CONCAT和ZEND_CONCAT是什么区别呢?
2.ZEND_ROPE_END 这个是干什么的呢?这个没有看懂
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
ZEND_FAST_CONCAT
是类似这种代码"select * from table where id={$id}
",用于简单的快速连接字符串。而
ZEND_ROPE_*
是一组opcode
有ZEND_ROPE_INIT
,ZEND_ROPE_ADD
,ZEND_ROPE_END
,也用于连接字符串。类似于这种代码"select * from table where id={$id} order by id desc
"。在$id
之后还有literal
的常量字符串要连接。执行完END
的opcode
后一个字符串也就连接完了。