INIT_METHOD_CALL
PHP code
<?php
/*
* Prepare for a method call. Followed by DO_FCALL.
* opcode number: 112
*/
class A {
var $num;
function incrementNum(){
$num++;
}
}
$obj = new A();
$obj->incrementNum();
?>
PHP opcodes
Function name: (null)
Compiled variables: !0=$obj
line | # | op | fetch | ext | return | operands |
---|---|---|---|---|---|---|
6 | 0 | NOP | ||||
13 | 1 | ZEND_FETCH_CLASS | :1 | 'A' | ||
2 | NEW | $2 | :1 | |||
3 | DO_FCALL_BY_NAME | 0 | ||||
4 | ASSIGN | !0,$2 | ||||
14 | 5 | ZEND_INIT_METHOD_CALL | !0,'incrementNum' | |||
6 | DO_FCALL_BY_NAME | 0 | ||||
16 | 7 | RETURN | 1 |
Function name: incrementNum
Compiled variables: !0=$num
line | # | op | fetch | ext | return | operands |
---|---|---|---|---|---|---|
9 | 0 | POST_INC | ~0 | !0 | ||
1 | FREE | ~0 | ||||
10 | 2 | RETURN | null |
add a note
User Contributed Notes
There are no user contributed notes for this page.
备份地址:http://www.lvesu.com/blog/php/internals2.opcodes.init-method-call.php