Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/sGcfG
function name: (null)
number of ops: 6
compiled vars: none
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
72 0 E > INIT_STATIC_METHOD_CALL 'Html', 'trim'
1 SEND_VAL '%3Cp%3ELorem+ipsum+dolor+sit+amet+%3Ca+href%3D%22very-long-long-prelong-href-that-should-not-be-cut%22%3EQuite+long+link%3C%2Fa%3E+text+after+link%3C%2Fp%3E'
2 SEND_VAL 35
3 DO_FCALL 0 $0
4 ECHO $0
5 > RETURN 1
Class Html:
Function trim:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 15
Branch analysis from position: 11
1 jumps found. (Code = 42) Position 1 = 19
Branch analysis from position: 19
2 jumps found. (Code = 77) Position 1 = 28, Position 2 = 34
Branch analysis from position: 28
2 jumps found. (Code = 78) Position 1 = 29, Position 2 = 34
Branch analysis from position: 29
1 jumps found. (Code = 42) Position 1 = 28
Branch analysis from position: 28
Branch analysis from position: 34
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 59
Branch analysis from position: 41
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 59
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 34
Branch analysis from position: 15
2 jumps found. (Code = 77) Position 1 = 28, Position 2 = 34
Branch analysis from position: 28
Branch analysis from position: 34
filename: /in/sGcfG
function name: trim
number of ops: 63
compiled vars: !0 = $html, !1 = $maxLen, !2 = $dom, !3 = $instance, !4 = $toRemove, !5 = $child
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
11 0 E > RECV !0
1 RECV_INIT !1 25
14 2 NEW $6 'DomDocument'
3 DO_FCALL 0
4 ASSIGN !2, $6
16 5 INIT_FCALL 'version_compare'
6 SEND_VAL '8.5.0'
7 SEND_VAL '5.4.0'
8 DO_ICALL $9
9 IS_SMALLER $9, 0
10 > JMPZ ~10, ->15
17 11 > INIT_METHOD_CALL !2, 'loadHTML'
12 SEND_VAR_EX !0
13 DO_FCALL 0
16 14 > JMP ->19
19 15 > INIT_METHOD_CALL !2, 'loadHTML'
16 SEND_VAR_EX !0
17 SEND_VAL_EX 8196
18 DO_FCALL 0
22 19 > NEW static $13
20 DO_FCALL 0
21 ASSIGN !3, $13
23 22 INIT_METHOD_CALL !3, 'walk'
23 SEND_VAR_EX !2
24 SEND_VAR_EX !1
25 DO_FCALL 0 $16
26 ASSIGN !4, $16
26 27 > FE_RESET_R $18 !4, ->34
28 > > FE_FETCH_R $18, !5, ->34
27 29 > FETCH_OBJ_R ~19 !5, 'parentNode'
30 INIT_METHOD_CALL ~19, 'removeChild'
31 SEND_VAR_EX !5
32 DO_FCALL 0
26 33 > JMP ->28
34 > FE_FREE $18
31 35 INIT_FCALL 'version_compare'
36 SEND_VAL '8.5.0'
37 SEND_VAL '5.4.0'
38 DO_ICALL $21
39 IS_SMALLER $21, 0
40 > JMPZ ~22, ->59
33 41 > INIT_METHOD_CALL !2, 'removeChild'
42 CHECK_FUNC_ARG
43 FETCH_OBJ_FUNC_ARG $23 !2, 'firstChild'
44 SEND_FUNC_ARG $23
45 DO_FCALL 0
34 46 INIT_METHOD_CALL !2, 'replaceChild'
47 CHECK_FUNC_ARG
48 FETCH_OBJ_FUNC_ARG $25 !2, 'firstChild'
49 FETCH_OBJ_FUNC_ARG $26 $25, 'firstChild'
50 FETCH_OBJ_FUNC_ARG $27 $26, 'firstChild'
51 SEND_FUNC_ARG $27
52 CHECK_FUNC_ARG
53 FETCH_OBJ_FUNC_ARG $28 !2, 'firstChild'
54 SEND_FUNC_ARG $28
55 DO_FCALL 0
36 56 INIT_METHOD_CALL !2, 'saveHTML'
57 DO_FCALL 0 $30
58 > RETURN $30
39 59 > INIT_METHOD_CALL !2, 'saveHTML'
60 DO_FCALL 0 $31
61 > RETURN $31
40 62* > RETURN null
End of function trim
Function walk:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 8
Branch analysis from position: 4
1 jumps found. (Code = 42) Position 1 = 40
Branch analysis from position: 40
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 8
2 jumps found. (Code = 43) Position 1 = 10, Position 2 = 29
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 29
Branch analysis from position: 18
2 jumps found. (Code = 43) Position 1 = 31, Position 2 = 40
Branch analysis from position: 31
2 jumps found. (Code = 77) Position 1 = 33, Position 2 = 39
Branch analysis from position: 33
2 jumps found. (Code = 78) Position 1 = 34, Position 2 = 39
Branch analysis from position: 34
1 jumps found. (Code = 42) Position 1 = 33
Branch analysis from position: 33
Branch analysis from position: 39
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 39
Branch analysis from position: 40
Branch analysis from position: 29
Branch analysis from position: 29
filename: /in/sGcfG
function name: walk
number of ops: 43
compiled vars: !0 = $node, !1 = $maxLen, !2 = $nodeLen, !3 = $child
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
42 0 E > RECV !0
1 RECV !1
45 2 FETCH_OBJ_R ~4 'reachedLimit'
3 > JMPZ ~4, ->8
46 4 > FETCH_OBJ_W $5 'toRemove'
5 ASSIGN_DIM $5
6 OP_DATA !0
45 7 > JMP ->40
50 8 > INSTANCEOF !0, 'DomText'
9 > JMPZ ~7, ->29
51 10 > FETCH_OBJ_R ~9 !0, 'nodeValue'
11 STRLEN ~10 ~9
12 ASSIGN ~11 !2, ~10
13 ASSIGN_OBJ_OP 1 'totalLen'
14 OP_DATA ~11
54 15 FETCH_OBJ_R ~12 'totalLen'
16 IS_SMALLER !1, ~12
17 > JMPZ ~13, ->29
55 18 > FETCH_OBJ_R ~15 !0, 'nodeValue'
19 FETCH_OBJ_R ~16 'totalLen'
20 SUB ~17 ~16, !1
21 SUB ~18 !2, ~17
22 FRAMELESS_ICALL_3 substr ~19 ~15, 0
23 OP_DATA ~18
24 CONCAT ~20 ~19, '...'
25 ASSIGN_OBJ !0, 'nodeValue'
26 OP_DATA ~20
56 27 ASSIGN_OBJ 'reachedLimit'
28 OP_DATA <true>
61 29 > ISSET_ISEMPTY_PROP_OBJ !0, 'childNodes'
30 > JMPZ ~22, ->40
62 31 > FETCH_OBJ_R ~23 !0, 'childNodes'
32 > FE_RESET_R $24 ~23, ->39
33 > > FE_FETCH_R $24, !3, ->39
63 34 > INIT_METHOD_CALL 'walk'
35 SEND_VAR_EX !3
36 SEND_VAR_EX !1
37 DO_FCALL 0
62 38 > JMP ->33
39 > FE_FREE $24
68 40 > FETCH_OBJ_R ~26 'toRemove'
41 > RETURN ~26
69 42* > RETURN null
End of function walk
End of class Html.
Generated using Vulcan Logic Dumper, using php 8.5.0