Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 74, Position 2 = 128
Branch analysis from position: 74
2 jumps found. (Code = 46) Position 1 = 85, Position 2 = 88
Branch analysis from position: 85
2 jumps found. (Code = 43) Position 1 = 89, Position 2 = 95
Branch analysis from position: 89
2 jumps found. (Code = 43) Position 1 = 99, Position 2 = 100
Branch analysis from position: 99
2 jumps found. (Code = 43) Position 1 = 104, Position 2 = 105
Branch analysis from position: 104
2 jumps found. (Code = 46) Position 1 = 107, Position 2 = 110
Branch analysis from position: 107
2 jumps found. (Code = 43) Position 1 = 111, Position 2 = 116
Branch analysis from position: 111
2 jumps found. (Code = 46) Position 1 = 118, Position 2 = 121
Branch analysis from position: 118
2 jumps found. (Code = 43) Position 1 = 122, Position 2 = 127
Branch analysis from position: 122
1 jumps found. (Code = 42) Position 1 = 132
Branch analysis from position: 132
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 127
Branch analysis from position: 121
Branch analysis from position: 116
Branch analysis from position: 110
Branch analysis from position: 105
Branch analysis from position: 100
Branch analysis from position: 95
Branch analysis from position: 88
Branch analysis from position: 128
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/GibVI
function name: (null)
number of ops: 133
compiled vars: !0 = $commonObject, !1 = $commonString, !2 = $topLevelObject, !3 = $serializedResult, !4 = $unserializedData
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
77 0 E > DECLARE_CLASS 'userrole'
84 1 DECLARE_CLASS 'status'
93 2 NEW $5 'MySimpleClass'
3 SEND_VAL_EX '%E5%85%B1%E9%80%9A%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88'
4 SEND_VAL_EX 500
5 SEND_VAL_EX <array>
6 DO_FCALL 0
7 ASSIGN !0, $5
94 8 ASSIGN !1, '%E5%85%B1%E6%9C%89%E3%81%95%E3%82%8C%E3%82%8B%E6%96%87%E5%AD%97%E5%88%97%E3%83%87%E3%83%BC%E3%82%BF'
97 9 NEW $9 'MySimpleClass'
10 SEND_VAL_EX 'Top+Level+Object'
11 SEND_VAL_EX 999
12 SEND_VAL_EX <array>
13 DO_FCALL 0
14 ASSIGN !2, $9
100 15 ASSIGN_OBJ !2, 'japaneseString'
16 OP_DATA '%E3%81%93%E3%82%8C%E3%81%AF%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E3%81%A7%E3%81%99'
101 17 ASSIGN_OBJ !2, 'integerValue'
18 OP_DATA 123
102 19 ASSIGN_OBJ !2, 'floatValue'
20 OP_DATA 45.67
103 21 ASSIGN_OBJ !2, 'booleanTrue'
22 OP_DATA <true>
104 23 ASSIGN_OBJ !2, 'nullValue'
24 OP_DATA null
107 25 ASSIGN_OBJ !2, 'nestedArrayData'
108 26 OP_DATA <array>
116 27 ASSIGN_OBJ !2, 'protectedProp'
117 28 OP_DATA <array>
126 29 ASSIGN_OBJ !2, 'sharedObjectRef1'
30 OP_DATA !0
127 31 ASSIGN_OBJ !2, 'sharedObjectRef2'
32 OP_DATA !0
130 33 ASSIGN_OBJ !2, 'sharedStringRef1'
34 OP_DATA !1
131 35 ASSIGN_OBJ !2, 'sharedStringRef2'
36 OP_DATA !1
134 37 FETCH_CLASS_CONSTANT ~24 'UserRole', 'Editor'
38 ASSIGN_OBJ !2, 'userRoleEnum'
39 OP_DATA ~24
135 40 FETCH_CLASS_CONSTANT ~26 'Status', 'Active'
41 ASSIGN_OBJ !2, 'statusEnum'
42 OP_DATA ~26
138 43 NEW $28 'MyCustomSerializable'
44 SEND_VAL_EX '%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E5%86%85%E3%81%AE%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0'
45 SEND_VAL_EX 777
46 DO_FCALL 0
47 ASSIGN_OBJ !2, 'customSerializableObj'
48 OP_DATA $28
142 49 INIT_FCALL 'serialize'
50 SEND_VAR !2
51 DO_ICALL $30
52 ASSIGN !3, $30
145 53 ECHO '---+%E5%85%83%E3%83%87%E3%83%BC%E3%82%BF+%28var_export%29+---%0A'
146 54 INIT_FCALL 'var_export'
55 SEND_VAR !2
56 DO_ICALL
147 57 ECHO '%0A%0A'
149 58 ECHO '---+%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%A9%E3%82%A4%E3%82%BA%E7%B5%90%E6%9E%9C+---%0A'
150 59 ECHO !3
151 60 ECHO '%0A%0A'
155 61 ECHO '---+%E3%83%87%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%A9%E3%82%A4%E3%82%BA%E5%87%A6%E7%90%86%E3%81%AE%E9%96%8B%E5%A7%8B+---%0A'
156 62 INIT_FCALL 'unserialize'
63 SEND_VAR !3
64 DO_ICALL $33
65 ASSIGN !4, $33
157 66 ECHO '---+%E3%83%87%E3%82%B7erializ%E5%87%A6%E7%90%86%E3%81%AE%E5%AE%8C%E4%BA%86+---%0A%0A'
159 67 ECHO '---+%E3%83%87%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%A9%E3%82%A4%E3%82%BA%E7%B5%90%E6%9E%9C+%28var_export%29+---%0A'
160 68 INIT_FCALL 'var_export'
69 SEND_VAR !4
70 DO_ICALL
161 71 ECHO '%0A'
164 72 INSTANCEOF !4, 'MySimpleClass'
73 > JMPZ ~36, ->128
165 74 > FETCH_OBJ_R ~37 !4, 'publicProp'
75 CONCAT ~38 '%E3%83%88%E3%83%83%E3%83%97%E3%83%AC%E3%83%99%E3%83%AB%E3%81%AE%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AE+publicProp%3A+', ~37
76 CONCAT ~39 ~38, '%0A'
77 ECHO ~39
166 78 INIT_METHOD_CALL !4, 'getPrivateProp'
79 DO_FCALL 0 $40
80 CONCAT ~41 '%E3%83%88%E3%83%83%E3%83%97%E3%83%AC%E3%83%99%E3%83%AB%E3%81%AE%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AE%E3%83%97%E3%83%A9%E3%82%A4%E3%83%99%E3%83%BC%E3%83%88%E3%83%97%E3%83%AD%E3%83%91%E3%83%86%E3%82%A3%3A+', $40
81 CONCAT ~42 ~41, '%0A'
82 ECHO ~42
168 83 ISSET_ISEMPTY_PROP_OBJ ~43 !4, 'customSerializableObj'
84 > JMPZ_EX ~43 ~43, ->88
85 > FETCH_OBJ_R ~44 !4, 'customSerializableObj'
86 INSTANCEOF ~45 ~44, 'MyCustomSerializable'
87 BOOL ~43 ~45
88 > > JMPZ ~43, ->95
169 89 > FETCH_OBJ_R ~46 !4, 'customSerializableObj'
90 INIT_METHOD_CALL ~46, 'getCustomData'
91 DO_FCALL 0 $47
92 CONCAT ~48 '%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E5%86%85%E3%81%AE%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%A9%E3%82%A4%E3%82%BA%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%3A+', $47
93 CONCAT ~49 ~48, '%0A'
94 ECHO ~49
172 95 > FETCH_OBJ_R ~50 !4, 'sharedObjectRef1'
96 FETCH_OBJ_R ~51 !4, 'sharedObjectRef2'
97 IS_IDENTICAL ~50, ~51
98 > JMPZ ~52, ->100
173 99 > ECHO '%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E5%8F%82%E7%85%A7+%28sharedObjectRef1+%E3%81%A8+sharedObjectRef2%29+%E3%81%AF%E6%AD%A3%E3%81%97%E3%81%8F%E5%BE%A9%E5%85%83%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%0A'
175 100 > FETCH_OBJ_R ~53 !4, 'sharedStringRef1'
101 FETCH_OBJ_R ~54 !4, 'sharedStringRef2'
102 IS_IDENTICAL ~53, ~54
103 > JMPZ ~55, ->105
176 104 > ECHO '%E5%80%A4%E5%8F%82%E7%85%A7+%28sharedStringRef1+%E3%81%A8+sharedStringRef2%29+%E3%81%AF%E6%AD%A3%E3%81%97%E3%81%8F%E5%BE%A9%E5%85%83%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%0A'
178 105 > ISSET_ISEMPTY_PROP_OBJ ~56 !4, 'userRoleEnum'
106 > JMPZ_EX ~56 ~56, ->110
107 > FETCH_OBJ_R ~57 !4, 'userRoleEnum'
108 INSTANCEOF ~58 ~57, 'UserRole'
109 BOOL ~56 ~58
110 > > JMPZ ~56, ->116
179 111 > FETCH_OBJ_R ~59 !4, 'userRoleEnum'
112 FETCH_OBJ_R ~60 ~59, 'value'
113 CONCAT ~61 'Enum+%28UserRole%29%3A+', ~60
114 CONCAT ~62 ~61, '%0A'
115 ECHO ~62
181 116 > ISSET_ISEMPTY_PROP_OBJ ~63 !4, 'statusEnum'
117 > JMPZ_EX ~63 ~63, ->121
118 > FETCH_OBJ_R ~64 !4, 'statusEnum'
119 INSTANCEOF ~65 ~64, 'Status'
120 BOOL ~63 ~65
121 > > JMPZ ~63, ->127
182 122 > FETCH_OBJ_R ~66 !4, 'statusEnum'
123 FETCH_OBJ_R ~67 ~66, 'name'
124 CONCAT ~68 'Enum+%28Status%29%3A+', ~67
125 CONCAT ~69 ~68, '%0A'
126 ECHO ~69
164 127 > > JMP ->132
185 128 > ECHO '%E3%83%87%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%A9%E3%82%A4%E3%82%BA%E3%81%95%E3%82%8C%E3%81%9F%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AF%E6%9C%9F%E5%BE%85%E3%81%95%E3%82%8C%E3%82%8B%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%A7%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%81%A7%E3%81%97%E3%81%9F%E3%80%82%0A'
186 129 INIT_FCALL 'var_dump'
130 SEND_VAR !4
131 DO_ICALL
189 132 > > RETURN 1
Class MySimpleClass:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/GibVI
function name: __construct
number of ops: 12
compiled vars: !0 = $public, !1 = $private, !2 = $protected
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
24 0 E > RECV !0
1 RECV !1
2 RECV !2
26 3 ASSIGN_OBJ 'publicProp'
4 OP_DATA !0
27 5 ASSIGN_OBJ 'privateProp'
6 OP_DATA !1
28 7 ASSIGN_OBJ 'protectedProp'
8 OP_DATA !2
29 9 ASSIGN_OBJ 'nestedArrayData'
10 OP_DATA <array>
30 11 > RETURN null
End of function __construct
Function getprivateprop:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/GibVI
function name: getPrivateProp
number of ops: 5
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
34 0 E > FETCH_OBJ_R ~0 'privateProp'
1 VERIFY_RETURN_TYPE ~0
2 > RETURN ~0
35 3* VERIFY_RETURN_TYPE
4* > RETURN null
End of function getprivateprop
End of class MySimpleClass.
Class MyCustomSerializable:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/GibVI
function name: __construct
number of ops: 7
compiled vars: !0 = $s, !1 = $n
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
44 0 E > RECV !0
1 RECV !1
46 2 ASSIGN_OBJ 'dataString'
3 OP_DATA !0
47 4 ASSIGN_OBJ 'dataNumber'
5 OP_DATA !1
48 6 > RETURN null
End of function __construct
Function __serialize:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/GibVI
function name: __serialize
number of ops: 9
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
54 0 E > ECHO '__serialize%28%29+called+for+MyCustomSerializable%0A'
56 1 FETCH_OBJ_R ~0 'dataString'
2 INIT_ARRAY ~1 ~0, 's'
57 3 FETCH_OBJ_R ~2 'dataNumber'
4 ADD_ARRAY_ELEMENT ~1 ~2, 'n'
5 VERIFY_RETURN_TYPE ~1
6 > RETURN ~1
59 7* VERIFY_RETURN_TYPE
8* > RETURN null
End of function __serialize
Function __unserialize:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/GibVI
function name: __unserialize
number of ops: 9
compiled vars: !0 = $data
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
63 0 E > RECV !0
65 1 ECHO '__unserialize%28%29+called+for+MyCustomSerializable%0A'
66 2 FETCH_DIM_R ~2 !0, 's'
3 ASSIGN_OBJ 'dataString'
4 OP_DATA ~2
67 5 FETCH_DIM_R ~4 !0, 'n'
6 ASSIGN_OBJ 'dataNumber'
7 OP_DATA ~4
68 8 > RETURN null
End of function __unserialize
Function getcustomdata:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/GibVI
function name: getCustomData
number of ops: 9
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
72 0 E > FETCH_OBJ_R ~0 'dataString'
1 CONCAT ~1 'Custom%3A+', ~0
2 CONCAT ~2 ~1, '+%2F+'
3 FETCH_OBJ_R ~3 'dataNumber'
4 CONCAT ~4 ~2, ~3
5 VERIFY_RETURN_TYPE ~4
6 > RETURN ~4
73 7* VERIFY_RETURN_TYPE
8* > RETURN null
End of function getcustomdata
End of class MyCustomSerializable.
Class UserRole: [no user functions]
Class Status: [no user functions]
Generated using Vulcan Logic Dumper, using php 8.0.0