Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 6
Branch analysis from position: 5
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
filename: /in/fnj67
function name: (null)
number of ops: 37
compiled vars: !0 = $closures, !1 = $date, !2 = $holidays
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
4 0 E > INIT_FCALL 'function_exists'
1 SEND_VAL 'easter_date'
2 DO_ICALL $3
3 BOOL_NOT ~4 $3
4 > JMPZ ~4, ->6
9 5 > DECLARE_FUNCTION 'easter_date'
28 6 > ASSIGN !0, <array>
37 7 INIT_FCALL 'file_put_contents'
8 FETCH_CLASS_CONSTANT ~6 'Holiday', 'CLOSURES_FILE'
9 SEND_VAL ~6
10 INIT_FCALL 'var_export'
11 SEND_VAR !0
12 SEND_VAL <true>
13 DO_ICALL $7
14 CONCAT ~8 '%3C%3Fphp+return+', $7
15 CONCAT ~9 ~8, '%3B'
16 SEND_VAL ~9
17 DO_ICALL
206 18 NEW $11 'DateTime'
19 SEND_VAL_EX '2017-08-28'
20 DO_FCALL 0
21 ASSIGN !1, $11
207 22 INIT_STATIC_METHOD_CALL 'Holiday', 'getHolidays'
23 SEND_VAR !1
24 DO_FCALL 0 $14
25 ASSIGN !2, $14
208 26 INIT_FCALL 'var_export'
27 SEND_VAR !2
28 DO_ICALL
209 29 ECHO '%0A'
210 30 INIT_FCALL 'var_dump'
31 INIT_STATIC_METHOD_CALL 'Holiday', 'isHoliday'
32 SEND_VAR !1
33 DO_FCALL 0 $17
34 SEND_VAR $17
35 DO_ICALL
36 > RETURN 1
Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/fnj67
function name: easter_date
number of ops: 98
compiled vars: !0 = $year, !1 = $J, !2 = $K, !3 = $M, !4 = $S, !5 = $A, !6 = $D, !7 = $R, !8 = $OG, !9 = $SZ, !10 = $OE, !11 = $OS
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
9 0 E > RECV !0
10 1 INIT_FCALL 'date'
2 SEND_VAL 'Y'
3 INIT_FCALL 'mktime'
4 SEND_VAL 0
5 SEND_VAL 0
6 SEND_VAL 0
7 SEND_VAL 1
8 SEND_VAL 1
9 SEND_VAR !0
10 DO_ICALL $12
11 SEND_VAR $12
12 DO_ICALL $13
13 ASSIGN !1, $13
11 14 INIT_FCALL 'floor'
15 DIV ~15 !1, 100
16 SEND_VAL ~15
17 DO_ICALL $16
18 ASSIGN !2, $16
12 19 INIT_FCALL 'floor'
20 MUL ~18 !2, 3
21 ADD ~19 ~18, 3
22 DIV ~20 ~19, 4
23 SEND_VAL ~20
24 DO_ICALL $21
25 ADD ~22 15, $21
26 INIT_FCALL 'floor'
27 MUL ~23 !2, 8
28 ADD ~24 ~23, 13
29 DIV ~25 ~24, 25
30 SEND_VAL ~25
31 DO_ICALL $26
32 SUB ~27 ~22, $26
33 ASSIGN !3, ~27
13 34 INIT_FCALL 'floor'
35 MUL ~29 !2, 3
36 ADD ~30 ~29, 3
37 DIV ~31 ~30, 4
38 SEND_VAL ~31
39 DO_ICALL $32
40 SUB ~33 2, $32
41 ASSIGN !4, ~33
14 42 MOD ~35 !1, 19
43 ASSIGN !5, ~35
15 44 MUL ~37 !5, 19
45 ADD ~38 ~37, !3
46 MOD ~39 ~38, 30
47 ASSIGN !6, ~39
16 48 INIT_FCALL 'floor'
49 DIV ~41 !6, 29
50 SEND_VAL ~41
51 DO_ICALL $42
52 INIT_FCALL 'floor'
53 DIV ~43 !6, 28
54 SEND_VAL ~43
55 DO_ICALL $44
56 INIT_FCALL 'floor'
57 DIV ~45 !6, 29
58 SEND_VAL ~45
59 DO_ICALL $46
60 SUB ~47 $44, $46
61 INIT_FCALL 'floor'
62 DIV ~48 !5, 11
63 SEND_VAL ~48
64 DO_ICALL $49
65 MUL ~50 $49, ~47
66 ADD ~51 $42, ~50
67 ASSIGN !7, ~51
17 68 ADD ~53 21, !6
69 SUB ~54 ~53, !7
70 ASSIGN !8, ~54
18 71 INIT_FCALL 'floor'
72 DIV ~56 !1, 4
73 SEND_VAL ~56
74 DO_ICALL $57
75 ADD ~58 !1, $57
76 ADD ~59 ~58, !4
77 MOD ~60 ~59, 7
78 SUB ~61 7, ~60
79 ASSIGN !9, ~61
19 80 SUB ~63 !8, !9
81 MOD ~64 ~63, 7
82 SUB ~65 7, ~64
83 ASSIGN !10, ~65
20 84 ADD ~67 !8, !10
85 ASSIGN !11, ~67
22 86 INIT_FCALL 'mktime'
87 SEND_VAL 0
88 SEND_VAL 0
89 SEND_VAL 0
90 SEND_VAL 3
91 SEND_VAR !11
92 SEND_VAR !1
93 DO_ICALL $69
94 VERIFY_RETURN_TYPE $69
95 > RETURN $69
23 96* VERIFY_RETURN_TYPE
97* > RETURN null
End of Dynamic Function 0
Class Holiday:
Function isholiday:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/fnj67
function name: isHoliday
number of ops: 20
compiled vars: !0 = $date, !1 = $holidays
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
60 0 E > RECV !0
62 1 INIT_STATIC_METHOD_CALL 'getHolidays'
2 SEND_VAR_EX !0
3 DO_FCALL 0 $2
4 ASSIGN !1, $2
64 5 INIT_METHOD_CALL !0, 'format'
6 SEND_VAL_EX 'Y-m-d'
7 DO_FCALL 0 $4
8 INIT_FCALL 'array_flip'
9 INIT_METHOD_CALL !0, 'format'
10 SEND_VAL_EX 'Y'
11 DO_FCALL 0 $5
12 FETCH_DIM_R ~6 !1, $5
13 SEND_VAL ~6
14 DO_ICALL $7
15 ARRAY_KEY_EXISTS ~8 $4, $7
16 VERIFY_RETURN_TYPE ~8
17 > RETURN ~8
65 18* VERIFY_RETURN_TYPE
19* > RETURN null
End of function isholiday
Function isworkday:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 12
Branch analysis from position: 11
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 12
2 jumps found. (Code = 43) Position 1 = 16, Position 2 = 17
Branch analysis from position: 16
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 17
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/fnj67
function name: isWorkDay
number of ops: 20
compiled vars: !0 = $date
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
67 0 E > RECV !0
69 1 INIT_FCALL 'in_array'
2 INIT_METHOD_CALL !0, 'format'
3 SEND_VAL_EX 'N'
4 DO_FCALL 0 $1
5 SEND_VAR $1
6 FETCH_STATIC_PROP_R unknown ~2 'workingDays'
7 SEND_VAL ~2
8 DO_ICALL $3
9 BOOL_NOT ~4 $3
10 > JMPZ ~4, ->12
70 11 > > RETURN <false>
72 12 > INIT_STATIC_METHOD_CALL 'isHoliday'
13 SEND_VAR !0
14 DO_FCALL 0 $5
15 > JMPZ $5, ->17
73 16 > > RETURN <false>
76 17 > > RETURN <true>
77 18* VERIFY_RETURN_TYPE
19* > RETURN null
End of function isworkday
Function countweekdays:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 5
Branch analysis from position: 4
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 5
2 jumps found. (Code = 77) Position 1 = 34, Position 2 = 41
Branch analysis from position: 34
2 jumps found. (Code = 78) Position 1 = 35, Position 2 = 41
Branch analysis from position: 35
2 jumps found. (Code = 43) Position 1 = 39, Position 2 = 40
Branch analysis from position: 39
1 jumps found. (Code = 42) Position 1 = 34
Branch analysis from position: 34
Branch analysis from position: 40
Branch analysis from position: 41
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 41
filename: /in/fnj67
function name: countWeekDays
number of ops: 44
compiled vars: !0 = $from, !1 = $to, !2 = $interval, !3 = $period, !4 = $days, !5 = $date
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
87 0 E > RECV !0
1 RECV_INIT !1 null
89 2 TYPE_CHECK 2 !1
3 > JMPZ ~6, ->5
90 4 > > RETURN null
96 5 > CLONE ~7 !0
6 ASSIGN !0, ~7
97 7 INIT_METHOD_CALL !0, 'setTime'
8 SEND_VAL_EX 0
9 SEND_VAL_EX 0
10 SEND_VAL_EX 0
11 DO_FCALL 0
98 12 CLONE ~10 !1
13 ASSIGN !1, ~10
99 14 INIT_METHOD_CALL !1, 'setTime'
15 SEND_VAL_EX 0
16 SEND_VAL_EX 0
17 SEND_VAL_EX 0
18 DO_FCALL 0
100 19 NEW $13 'DateInterval'
20 SEND_VAL_EX 'P1D'
21 DO_FCALL 0
22 ASSIGN !2, $13
101 23 INIT_METHOD_CALL !1, 'add'
24 SEND_VAR_EX !2
25 DO_FCALL 0
102 26 NEW $17 'DatePeriod'
27 SEND_VAR_EX !0
28 SEND_VAR_EX !2
29 SEND_VAR_EX !1
30 DO_FCALL 0
31 ASSIGN !3, $17
104 32 ASSIGN !4, 0
106 33 > FE_RESET_R $21 !3, ->41
34 > > FE_FETCH_R $21, !5, ->41
107 35 > INIT_STATIC_METHOD_CALL 'isWorkDay'
36 SEND_VAR !5
37 DO_FCALL 0 $22
38 > JMPZ $22, ->40
108 39 > PRE_INC !4
106 40 > > JMP ->34
41 > FE_FREE $21
112 42 > RETURN !4
113 43* > RETURN null
End of function countweekdays
Function countweekdaysinmonthtodate:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/fnj67
function name: countWeekDaysInMonthToDate
number of ops: 27
compiled vars: !0 = $month, !1 = $year, !2 = $today, !3 = $d1, !4 = $d2
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
123 0 E > RECV !0
1 RECV !1
125 2 NEW $5 'DateTimeImmutable'
3 DO_FCALL 0
4 ASSIGN !2, $5
126 5 INIT_METHOD_CALL !2, 'setDate'
6 SEND_VAR_EX !1
7 SEND_VAR_EX !0
8 SEND_VAL_EX 1
9 DO_FCALL 0 $8
10 ASSIGN !3, $8
127 11 INIT_METHOD_CALL !3, 'modify'
12 SEND_VAL_EX 'last+day+of+this+month'
13 DO_FCALL 0 $10
14 ASSIGN !4, $10
129 15 INIT_STATIC_METHOD_CALL 'countWeekDays'
16 SEND_VAR !3
17 INIT_FCALL 'min'
18 SEND_VAR !4
19 SEND_VAR !2
20 DO_ICALL $12
21 SEND_VAR $12
22 DO_FCALL 0 $13
23 VERIFY_RETURN_TYPE $13
24 > RETURN $13
130 25* VERIFY_RETURN_TYPE
26* > RETURN null
End of function countweekdaysinmonthtodate
Function geteaster:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/fnj67
function name: getEaster
number of ops: 16
compiled vars: !0 = $date
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
137 0 E > RECV !0
139 1 NEW $1 'DateTimeImmutable'
2 DO_FCALL 0
3 INIT_METHOD_CALL $1, 'setTimestamp'
4 INIT_FCALL_BY_NAME 'easter_date'
5 INIT_METHOD_CALL !0, 'format'
6 SEND_VAL_EX 'Y'
7 DO_FCALL 0 $3
8 SEND_VAR_NO_REF_EX $3
9 DO_FCALL 0 $4
10 SEND_VAR_NO_REF_EX $4
11 DO_FCALL 0 $5
12 VERIFY_RETURN_TYPE $5
13 > RETURN $5
140 14* VERIFY_RETURN_TYPE
15* > RETURN null
End of function geteaster
Function getholidays:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 9
Branch analysis from position: 5
2 jumps found. (Code = 77) Position 1 = 23, Position 2 = 74
Branch analysis from position: 23
2 jumps found. (Code = 78) Position 1 = 24, Position 2 = 74
Branch analysis from position: 24
2 jumps found. (Code = 43) Position 1 = 31, Position 2 = 32
Branch analysis from position: 31
1 jumps found. (Code = 42) Position 1 = 23
Branch analysis from position: 23
Branch analysis from position: 32
2 jumps found. (Code = 77) Position 1 = 36, Position 2 = 72
Branch analysis from position: 36
2 jumps found. (Code = 78) Position 1 = 37, Position 2 = 72
Branch analysis from position: 37
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 46
Branch analysis from position: 41
1 jumps found. (Code = 42) Position 1 = 64
Branch analysis from position: 64
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
Branch analysis from position: 46
2 jumps found. (Code = 43) Position 1 = 52, Position 2 = 60
Branch analysis from position: 52
1 jumps found. (Code = 42) Position 1 = 64
Branch analysis from position: 64
Branch analysis from position: 60
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
Branch analysis from position: 72
1 jumps found. (Code = 42) Position 1 = 23
Branch analysis from position: 23
Branch analysis from position: 72
Branch analysis from position: 74
2 jumps found. (Code = 43) Position 1 = 81, Position 2 = 99
Branch analysis from position: 81
2 jumps found. (Code = 77) Position 1 = 83, Position 2 = 98
Branch analysis from position: 83
2 jumps found. (Code = 78) Position 1 = 84, Position 2 = 98
Branch analysis from position: 84
2 jumps found. (Code = 43) Position 1 = 88, Position 2 = 90
Branch analysis from position: 88
1 jumps found. (Code = 42) Position 1 = 83
Branch analysis from position: 83
Branch analysis from position: 90
Branch analysis from position: 98
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 98
Branch analysis from position: 99
Branch analysis from position: 74
Branch analysis from position: 9
filename: /in/fnj67
function name: getHolidays
number of ops: 103
compiled vars: !0 = $start, !1 = $relativeHolidays, !2 = $period, !3 = $date, !4 = $year, !5 = $relativeHoliday, !6 = $holidayDate, !7 = $holidays, !8 = $dates
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
147 0 E > RECV !0
149 1 BIND_STATIC !1
163 2 INSTANCEOF ~9 !0, 'DateTimeImmutable'
3 BOOL_NOT ~10 ~9
4 > JMPZ ~10, ->9
165 5 > INIT_STATIC_METHOD_CALL 'DateTimeImmutable', 'createFromMutable'
6 SEND_VAR !0
7 DO_FCALL 0 $11
8 ASSIGN !0, $11
168 9 > INIT_METHOD_CALL !0, 'modify'
10 SEND_VAL_EX 'first+day+of+this+year'
11 DO_FCALL 0 $13
12 ASSIGN !0, $13
171 13 NEW $15 'DatePeriod'
14 SEND_VAR_EX !0
15 NEW $16 'DateInterval'
16 SEND_VAL_EX 'P1Y'
17 DO_FCALL 0
18 SEND_VAR_NO_REF_EX $16
19 SEND_VAL_EX 0
20 DO_FCALL 0
21 ASSIGN !2, $15
172 22 > FE_RESET_R $20 !2, ->74
23 > > FE_FETCH_R $20, !3, ->74
173 24 > INIT_METHOD_CALL !3, 'format'
25 SEND_VAL_EX 'Y'
26 DO_FCALL 0 $21
27 ASSIGN !4, $21
174 28 FETCH_STATIC_PROP_R unknown ~23 'observableHolidays'
29 ARRAY_KEY_EXISTS !4, ~23
30 > JMPZ ~24, ->32
175 31 > > JMP ->23
177 32 > FETCH_STATIC_PROP_W unknown $25 'observableHolidays'
33 ASSIGN_DIM $25, !4
34 OP_DATA <array>
178 35 > FE_RESET_R $27 !1, ->72
36 > > FE_FETCH_R $27, !5, ->72
179 37 > INIT_FCALL 'is_callable'
38 SEND_VAR !5
39 DO_ICALL $28
40 > JMPZ $28, ->46
180 41 > INIT_DYNAMIC_CALL !5
42 SEND_VAR_EX !3
43 DO_FCALL 0 $29
44 ASSIGN !6, $29
179 45 > JMP ->64
181 46 > INIT_FCALL 'strpos'
47 SEND_VAR !5
48 SEND_VAL 'P'
49 DO_ICALL $31
50 IS_IDENTICAL $31, 0
51 > JMPZ ~32, ->60
182 52 > INIT_METHOD_Generated using Vulcan Logic Dumper, using php 8.0.0