3v4l.org

run code in 300+ PHP versions simultaneously
<?php if (!extension_loaded('Zend OPcache')) { echo '<div style="background-color: #F2DEDE; color: #B94A48; padding: 1em;">You do not have the Zend OPcache extension loaded, sample data is being shown instead.</div>'; require 'data-sample.php'; } // Fetch configuration and status information from OpCache $config = opcache_get_configuration(); $status = opcache_get_status(); /** * Turn bytes into a human readable format * @param $bytes */ function size_for_humans($bytes) { if ($bytes > 1048576) { return sprintf('%.2f&nbsp;MB', $bytes / 1048576); } else if ($bytes > 1024) { return sprintf('%.2f&nbsp;kB', $bytes / 1024); } else return sprintf('%d&nbsp;bytes', $bytes); } ?> <!DOCTYPE html> <meta charset="utf-8"> <html> <head> <style> body { font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; margin: auto; position: relative; width: 1024px; } h1 { padding: 10px 0 } table { border-collapse: collapse; } tbody tr:nth-child(even) { background-color: #eee } p.capitalize { text-transform: capitalize } .tabs { position: relative; float: left; width: 60%; } .tab { float: left } .tab label { background: #eee; padding: 10px; border: 1px solid #ccc; margin-left: -1px; position: relative; left: 1px; } .tab [type=radio] { display: none } .tab th, .tab td { padding: 6px 10px } .content { position: absolute; top: 28px; left: 0; background: white; padding: 20px; border: 1px solid #ccc; height: 500px; width: 560px; overflow: auto; } .content table { width: 100% } .content th, .tab:nth-child(3) td { text-align: left; } .content td { text-align: right; } .clickable { cursor: pointer; } [type=radio]:checked ~ label { background: white; border-bottom: 1px solid white; z-index: 2; } [type=radio]:checked ~ label ~ .content { z-index: 1; } #graph { float: right; width: 40%; position: relative; } #graph > form { position: absolute; right: 110px; top: -20px; } #graph > svg { position: absolute; top: 0; right: 0; } #stats { position: absolute; right: 125px; top: 145px; } #stats th, #stats td { padding: 6px 10px; font-size: 0.8em; } </style> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/d3/3.0.1/d3.v3.min.js"></script> <script type="text/javascript"> var hidden = {}; function toggleVisible(head, row) { if (!hidden[row]) { d3.selectAll(row).transition().style('display', 'none'); hidden[row] = true; d3.select(head).transition().style('color', '#ccc'); } else { d3.selectAll(row).transition().style('display'); hidden[row] = false; d3.select(head).transition().style('color', '#000'); } } </script> <?php $title = 'PHP ' . phpversion() . " with OpCache {$config['version']['version']}"; ?> <title><?php echo $title; ?></title> </head> <body> <h1><?php echo $title; ?></h1> <div class="tabs"> <div class="tab"> <input type="radio" id="tab-status" name="tab-group-1" checked> <label for="tab-status">Status</label> <div class="content"> <table> <?php foreach ($status as $key => $value) { if ($key === 'scripts') continue; if (is_array($value)) { foreach ($value as $k => $v) { if ($v === false) $value = 'false'; if ($v === true) $value = 'true'; if ($k === 'used_memory' || $k === 'free_memory' || $k === 'wasted_memory') $v = size_for_humans($v); if ($k === 'current_wasted_percentage' || $k === 'opcache_hit_rate') $v = number_format($v,2) . '%'; if ($k === 'blacklist_miss_ratio') $v = number_format($v, 2) . '%'; if ($k === 'start_time' || $k === 'last_restart_time') $v = ($v ? date(DATE_RFC822, $v) : 'never'); echo "<tr><th>$k</th><td>$v</td></tr>\n"; } continue; } if ($value===false) $value = 'false'; if ($value===true) $value = 'true'; echo "<tr><th>$key</th><td>$value</td></tr>\n"; } ?> </table> </div> </div> <div class="tab"> <input type="radio" id="tab-config" name="tab-group-1"> <label for="tab-config">Configuration</label> <div class="content"> <table> <?php foreach ($config['directives'] as $key => $value) { if ($value === false) $value = 'false'; if ($value === true) $value = 'true'; if ($key == 'opcache.memory_consumption') $value = size_for_humans($value); echo "<tr><th>$key</th><td>$value</td></tr>\n"; } ?> </table> </div> </div> <div class="tab"> <input type="radio" id="tab-scripts" name="tab-group-1"> <label for="tab-scripts">Scripts (<?php echo count($status["scripts"]); ?>)</label> <div class="content"> <table style="font-size:0.8em;"> <tr> <th width="10%">Hits</th> <th width="20%">Memory</th> <th width="70%">Path</th> </tr> <?php foreach($status['scripts'] as $key=>$data) { $dirs[dirname($key)][basename($key)]=$data; } asort($dirs); $id = 1; foreach($dirs as $dir => $files) { $count = count($files); $file_plural = $count > 1 ? 's' : null; $m = 0; foreach ($files as $file => $data) { $m += $data["memory_consumption"]; } $m = size_for_humans($m); if ($count > 1) { echo '<tr>'; echo "<th class=\"clickable\" id=\"head-{$id}\" colspan=\"3\" onclick=\"toggleVisible('#head-{$id}', '#row-{$id}')\">{$dir} ({$count} file{$file_plural}, {$m})</th>"; echo '</tr>'; } foreach ($files as $file => $data) { echo "<tr id=\"row-{$id}\">"; echo "<td>{$data["hits"]}</td>"; echo "<td>" .size_for_humans($data["memory_consumption"]). "</td>"; echo $count > 1 ? "<td>{$file}</td>" : "<td>{$dir}/{$file}</td>"; echo '</tr>'; } ++$id; } ?> </table> </div> </div> </div> <div id="graph"> <form> <label><input type="radio" name="dataset" value="memory" checked> Memory</label> <label><input type="radio" name="dataset" value="keys"> Keys</label> <label><input type="radio" name="dataset" value="hits"> Hits</label> </form> <div id="stats"></div> </div> <?php $mem = $status['memory_usage']; $stats = $status['opcache_statistics']; $free_keys = $stats['max_cached_keys'] - $stats['num_cached_keys']; echo " <script> var dataset = { memory: [{$mem['used_memory']},{$mem['free_memory']},{$mem['wasted_memory']}], keys: [{$stats['num_cached_keys']},{$free_keys},0], hits: [{$stats['misses']},{$stats['hits']},0] }; "; ?> var width = 400, height = 400, radius = Math.min(width, height) / 2, colours = ['#B41F1F', '#1FB437', '#ff7f0e']; d3.scale.customColours = function() { return d3.scale.ordinal().range(colours); }; var colour = d3.scale.customColours(); var pie = d3.layout.pie() .sort(null); var arc = d3.svg.arc() .innerRadius(radius - 20) .outerRadius(radius - 50); var svg = d3.select("#graph").append("svg") .attr("width", width) .attr("height", height) .append("g") .attr("transform", "translate(" + width / 2 + "," + height / 2 + ")"); var path = svg.selectAll("path") .data(pie(dataset.memory)) .enter().append("path") .attr("fill", function(d, i) { return colour(i); }) .attr("d", arc) .each(function(d) { this._current = d; }); // store the initial values d3.selectAll("input").on("change", change); set_text("memory"); function set_text(t) { if(t=="memory") { d3.select("#stats").html( "<table><tr><th style='background:#B41F1F;'>Used</th><td><?php echo size_for_humans($mem['used_memory'])?></td></tr>"+ "<tr><th style='background:#1FB437;'>Free</th><td><?php echo size_for_humans($mem['free_memory'])?></td></tr>"+ "<tr><th style='background:#ff7f0e;' rowspan=\"2\">Wasted</th><td><?php echo size_for_humans($mem['wasted_memory'])?></td></tr>"+ "<tr><td><?php echo number_format($mem['current_wasted_percentage'],2)?>%</td></tr></table>" ); } else if(t=="keys") { d3.select("#stats").html( "<table><tr><th style='background:#B41F1F;'>Cached keys</th><td>"+dataset[t][0]+"</td></tr>"+ "<tr><th style='background:#1FB437;'>Free Keys</th><td>"+dataset[t][1]+"</td></tr></table>" ); } else if(t=="hits") { d3.select("#stats").html( "<table><tr><th style='background:#B41F1F;'>Misses</th><td>"+dataset[t][0]+"</td></tr>"+ "<tr><th style='background:#1FB437;'>Cache Hits</th><td>"+dataset[t][1]+"</td></tr></table>" ); } } function change() { path = path.data(pie(dataset[this.value])); // update the data path.transition().duration(750).attrTween("d", arcTween); // redraw the arcs set_text(this.value); } function arcTween(a) { var i = d3.interpolate(this._current, a); this._current = i(0); return function(t) { return arc(i(t)); }; } </script> </body> </html>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 7
Branch analysis from position: 5
2 jumps found. (Code = 77) Position 1 = 29, Position 2 = 112
Branch analysis from position: 29
2 jumps found. (Code = 78) Position 1 = 30, Position 2 = 112
Branch analysis from position: 30
2 jumps found. (Code = 43) Position 1 = 33, Position 2 = 34
Branch analysis from position: 33
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
Branch analysis from position: 34
2 jumps found. (Code = 43) Position 1 = 36, Position 2 = 99
Branch analysis from position: 36
2 jumps found. (Code = 77) Position 1 = 37, Position 2 = 97
Branch analysis from position: 37
2 jumps found. (Code = 78) Position 1 = 38, Position 2 = 97
Branch analysis from position: 38
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 42
Branch analysis from position: 41
2 jumps found. (Code = 43) Position 1 = 44, Position 2 = 45
Branch analysis from position: 44
2 jumps found. (Code = 47) Position 1 = 47, Position 2 = 49
Branch analysis from position: 47
2 jumps found. (Code = 47) Position 1 = 50, Position 2 = 52
Branch analysis from position: 50
2 jumps found. (Code = 43) Position 1 = 53, Position 2 = 57
Branch analysis from position: 53
2 jumps found. (Code = 47) Position 1 = 59, Position 2 = 61
Branch analysis from position: 59
2 jumps found. (Code = 43) Position 1 = 62, Position 2 = 68
Branch analysis from position: 62
2 jumps found. (Code = 43) Position 1 = 70, Position 2 = 76
Branch analysis from position: 70
2 jumps found. (Code = 47) Position 1 = 78, Position 2 = 80
Branch analysis from position: 78
2 jumps found. (Code = 43) Position 1 = 81, Position 2 = 90
Branch analysis from position: 81
2 jumps found. (Code = 43) Position 1 = 82, Position 2 = 88
Branch analysis from position: 82
1 jumps found. (Code = 42) Position 1 = 89
Branch analysis from position: 89
1 jumps found. (Code = 42) Position 1 = 37
Branch analysis from position: 37
Branch analysis from position: 88
1 jumps found. (Code = 42) Position 1 = 37
Branch analysis from position: 37
Branch analysis from position: 90
Branch analysis from position: 80
Branch analysis from position: 76
Branch analysis from position: 68
Branch analysis from position: 61
Branch analysis from position: 57
Branch analysis from position: 52
Branch analysis from position: 49
Branch analysis from position: 45
Branch analysis from position: 42
Branch analysis from position: 97
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
Branch analysis from position: 97
Branch analysis from position: 99
2 jumps found. (Code = 43) Position 1 = 101, Position 2 = 102
Branch analysis from position: 101
2 jumps found. (Code = 43) Position 1 = 104, Position 2 = 105
Branch analysis from position: 104
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
Branch analysis from position: 105
Branch analysis from position: 102
Branch analysis from position: 112
2 jumps found. (Code = 77) Position 1 = 116, Position 2 = 137
Branch analysis from position: 116
2 jumps found. (Code = 78) Position 1 = 117, Position 2 = 137
Branch analysis from position: 117
2 jumps found. (Code = 43) Position 1 = 120, Position 2 = 121
Branch analysis from position: 120
2 jumps found. (Code = 43) Position 1 = 123, Position 2 = 124
Branch analysis from position: 123
2 jumps found. (Code = 43) Position 1 = 126, Position 2 = 130
Branch analysis from position: 126
1 jumps found. (Code = 42) Position 1 = 116
Branch analysis from position: 116
Branch analysis from position: 130
Branch analysis from position: 124
Branch analysis from position: 121
Branch analysis from position: 137
2 jumps found. (Code = 77) Position 1 = 145, Position 2 = 157
Branch analysis from position: 145
2 jumps found. (Code = 78) Position 1 = 146, Position 2 = 157
Branch analysis from position: 146
1 jumps found. (Code = 42) Position 1 = 145
Branch analysis from position: 145
Branch analysis from position: 157
2 jumps found. (Code = 77) Position 1 = 163, Position 2 = 243
Branch analysis from position: 163
2 jumps found. (Code = 78) Position 1 = 164, Position 2 = 243
Branch analysis from position: 164
2 jumps found. (Code = 43) Position 1 = 169, Position 2 = 171
Branch analysis from position: 169
1 jumps found. (Code = 42) Position 1 = 172
Branch analysis from position: 172
2 jumps found. (Code = 77) Position 1 = 175, Position 2 = 180
Branch analysis from position: 175
2 jumps found. (Code = 78) Position 1 = 176, Position 2 = 180
Branch analysis from position: 176
1 jumps found. (Code = 42) Position 1 = 175
Branch analysis from position: 175
Branch analysis from position: 180
2 jumps found. (Code = 43) Position 1 = 187, Position 2 = 205
Branch analysis from position: 187
2 jumps found. (Code = 77) Position 1 = 206, Position 2 = 240
Branch analysis from position: 206
2 jumps found. (Code = 78) Position 1 = 207, Position 2 = 240
Branch analysis from position: 207
2 jumps found. (Code = 43) Position 1 = 226, Position 2 = 231
Branch analysis from position: 226
1 jumps found. (Code = 42) Position 1 = 237
Branch analysis from position: 237
1 jumps found. (Code = 42) Position 1 = 206
Branch analysis from position: 206
Branch analysis from position: 231
1 jumps found. (Code = 42) Position 1 = 206
Branch analysis from position: 206
Branch analysis from position: 240
1 jumps found. (Code = 42) Position 1 = 163
Branch analysis from position: 163
Branch analysis from position: 240
Branch analysis from position: 205
Branch analysis from position: 180
Branch analysis from position: 171
2 jumps found. (Code = 77) Position 1 = 175, Position 2 = 180
Branch analysis from position: 175
Branch analysis from position: 180
Branch analysis from position: 243
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 243
Branch analysis from position: 157
Branch analysis from position: 137
Branch analysis from position: 112
Branch analysis from position: 7
filename:       /in/FP73T
function name:  (null)
number of ops:  302
compiled vars:  !0 = $config, !1 = $status, !2 = $title, !3 = $value, !4 = $key, !5 = $v, !6 = $k, !7 = $data, !8 = $dirs, !9 = $id, !10 = $files, !11 = $dir, !12 = $count, !13 = $file_plural, !14 = $m, !15 = $file, !16 = $mem, !17 = $stats, !18 = $free_keys
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'extension_loaded'
          1        SEND_VAL                                                 'Zend+OPcache'
          2        DO_ICALL                                         $19     
          3        BOOL_NOT                                         ~20     $19
          4      > JMPZ                                                     ~20, ->7
    4     5    >   ECHO                                                     '%3Cdiv+style%3D%22background-color%3A+%23F2DEDE%3B+color%3A+%23B94A48%3B+padding%3A+1em%3B%22%3EYou+do+not+have+the+Zend+OPcache+extension+loaded%2C+sample+data+is+being+shown+instead.%3C%2Fdiv%3E'
    5     6        INCLUDE_OR_EVAL                                          'data-sample.php', REQUIRE
    9     7    >   INIT_FCALL_BY_NAME                                       'opcache_get_configuration'
          8        DO_FCALL                                      0  $22     
          9        ASSIGN                                                   !0, $22
   10    10        INIT_FCALL_BY_NAME                                       'opcache_get_status'
         11        DO_FCALL                                      0  $24     
         12        ASSIGN                                                   !1, $24
   24    13        ECHO                                                     '%3C%21DOCTYPE+html%3E%0A%3Cmeta+charset%3D%22utf-8%22%3E%0A%3Chtml%3E%0A%3Chead%3E%0A%3Cstyle%3E%0Abody+%7B%0A%09font-family%3A+%22Helvetica+Neue%22%2CHelvetica%2CArial%2Csans-serif%3B%0A%09margin%3A+auto%3B%0A%09position%3A+relative%3B%0A%09width%3A+1024px%3B%0A%7D%0A%0Ah1+%7B%0A%09padding%3A+10px+0%0A%7D%0A%0Atable+%7B%0A%09border-collapse%3A+collapse%3B%0A%7D%0A%0Atbody+tr%3Anth-child%28even%29+%7B%0A%09background-color%3A+%23eee%0A%7D%0A%0Ap.capitalize+%7B%0A%09text-transform%3A+capitalize%0A%7D%0A%0A.tabs+%7B%0A%09position%3A+relative%3B%0A%09float%3A+left%3B%0A%09width%3A+60%25%3B%0A%7D%0A%0A.tab+%7B%0A%09float%3A+left%0A%7D%0A%0A.tab+label+%7B%0A%09background%3A+%23eee%3B%0A%09padding%3A+10px%3B%0A%09border%3A+1px+solid+%23ccc%3B%0A%09margin-left%3A+-1px%3B%0A%09position%3A+relative%3B%0A%09left%3A+1px%3B%0A%7D%0A%0A.tab+%5Btype%3Dradio%5D+%7B%0A%09display%3A+none%0A%7D%0A%0A.tab+th%2C+.tab+td+%7B%0A%09padding%3A+6px+10px%0A%7D%0A%0A.content+%7B%0A%09position%3A+absolute%3B%0A%09top%3A+28px%3B%0A%09left%3A+0%3B%0A%09background%3A+white%3B%0A%09padding%3A+20px%3B%0A%09border%3A+1px+solid+%23ccc%3B%0A%09height%3A+500px%3B%0A%09width%3A+560px%3B%0A%09overflow%3A+auto%3B%0A%7D%0A%0A.content+table+%7B%0A%09width%3A+100%25%0A%7D%0A%0A.content+th%2C+.tab%3Anth-child%283%29+td+%7B%0A%09text-align%3A+left%3B%0A%7D%0A%0A.content+td+%7B%0A%09text-align%3A+right%3B%0A%7D%0A%0A.clickable+%7B%0A%09cursor%3A+pointer%3B%0A%7D%0A%0A%5Btype%3Dradio%5D%3Achecked+%7E+label+%7B%0A%09background%3A+white%3B%0A%09border-bottom%3A+1px+solid+white%3B%0A%09z-index%3A+2%3B%0A%7D%0A%0A%5Btype%3Dradio%5D%3Achecked+%7E+label+%7E+.content+%7B%0A%09z-index%3A+1%3B%0A%7D%0A%0A%23graph+%7B%0A%09float%3A+right%3B%0A%09width%3A+40%25%3B%0A%09position%3A+relative%3B%0A%7D%0A%0A%23graph+%3E+form+%7B%0A%09position%3A+absolute%3B%0A%09right%3A+110px%3B%0A%09top%3A+-20px%3B%0A%7D%0A%0A%23graph+%3E+svg+%7B%0A%09position%3A+absolute%3B%0A%09top%3A+0%3B%0A%09right%3A+0%3B%0A%7D%0A%0A%23stats+%7B%0A%09position%3A+absolute%3B%0A%09right%3A+125px%3B%0A%09top%3A+145px%3B%0A%7D%0A%0A%23stats+th%2C+%23stats+td+%7B%0A%09padding%3A+6px+10px%3B%0A%09font-size%3A+0.8em%3B%0A%7D%0A%3C%2Fstyle%3E%0A%3Cscript+type%3D%22text%2Fjavascript%22+src%3D%22%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fd3%2F3.0.1%2Fd3.v3.min.js%22%3E%3C%2Fscript%3E%0A%3Cscript+type%3D%22text%2Fjavascript%22%3E%0Avar+hidden+%3D+%7B%7D%3B%0Afunction+toggleVisible%28head%2C+row%29+%7B%0A%09if+%28%21hidden%5Brow%5D%29+%7B%0A%09%09d3.selectAll%28row%29.transition%28%29.style%28%27display%27%2C+%27none%27%29%3B%0A%09%09hidden%5Brow%5D+%3D+true%3B%0A%09%09d3.select%28head%29.transition%28%29.style%28%27color%27%2C+%27%23ccc%27%29%3B%0A%09%7D+else+%7B%0A%09%09d3.selectAll%28row%29.transition%28%29.style%28%27display%27%29%3B%0A%09%09hidden%5Brow%5D+%3D+false%3B%0A%09%09d3.select%28head%29.transition%28%29.style%28%27color%27%2C+%27%23000%27%29%3B%0A%09%7D%0A%7D%0A%3C%2Fscript%3E%0A'
  161    14        INIT_FCALL                                               'phpversion'
         15        DO_ICALL                                         $26     
         16        CONCAT                                           ~27     'PHP+', $26
         17        NOP                                                      
         18        FETCH_DIM_R                                      ~28     !0, 'version'
         19        FETCH_DIM_R                                      ~29     ~28, 'version'
         20        FAST_CONCAT                                      ~30     '+with+OpCache+', ~29
         21        CONCAT                                           ~31     ~27, ~30
         22        ASSIGN                                                   !2, ~31
  162    23        ECHO                                                     '%3Ctitle%3E'
         24        ECHO                                                     !2
         25        ECHO                                                     '%3C%2Ftitle%3E%0A%3C%2Fhead%3E%0A%0A%3Cbody%3E%0A%09%3Ch1%3E'
  166    26        ECHO                                                     !2
         27        ECHO                                                     '%3C%2Fh1%3E%0A%0A%09%3Cdiv+class%3D%22tabs%22%3E%0A%0A%09%09%3Cdiv+class%3D%22tab%22%3E%0A%09%09%09%3Cinput+type%3D%22radio%22+id%3D%22tab-status%22+name%3D%22tab-group-1%22+checked%3E%0A%09%09%09%3Clabel+for%3D%22tab-status%22%3EStatus%3C%2Flabel%3E%0A%09%09%09%3Cdiv+class%3D%22content%22%3E%0A%09%09%09%09%3Ctable%3E%0A%09%09%09%09%09'
  176    28      > FE_RESET_R                                       $33     !1, ->112
         29    > > FE_FETCH_R                                       ~34     $33, !3, ->112
         30    >   ASSIGN                                                   !4, ~34
  177    31        IS_IDENTICAL                                             !4, 'scripts'
         32      > JMPZ                                                     ~36, ->34
         33    > > JMP                                                      ->29
  179    34    >   TYPE_CHECK                                  128          !3
         35      > JMPZ                                                     ~37, ->99
  180    36    > > FE_RESET_R                                       $38     !3, ->97
         37    > > FE_FETCH_R                                       ~39     $38, !5, ->97
         38    >   ASSIGN                                                   !6, ~39
  181    39        TYPE_CHECK                                    4          !5
         40      > JMPZ                                                     ~41, ->42
         41    >   ASSIGN                                                   !3, 'false'
  182    42    >   TYPE_CHECK                                    8          !5
         43      > JMPZ                                                     ~43, ->45
         44    >   ASSIGN                                                   !3, 'true'
  183    45    >   IS_IDENTICAL                                     ~45     !6, 'used_memory'
         46      > JMPNZ_EX                                         ~45     ~45, ->49
         47    >   IS_IDENTICAL                                     ~46     !6, 'free_memory'
         48        BOOL                                             ~45     ~46
         49    > > JMPNZ_EX                                         ~45     ~45, ->52
         50    >   IS_IDENTICAL                                     ~47     !6, 'wasted_memory'
         51        BOOL                                             ~45     ~47
         52    > > JMPZ                                                     ~45, ->57
         53    >   INIT_FCALL                                               'size_for_humans'
         54        SEND_VAR                                                 !5
         55        DO_FCALL                                      0  $48     
         56        ASSIGN                                                   !5, $48
  184    57    >   IS_IDENTICAL                                     ~50     !6, 'current_wasted_percentage'
         58      > JMPNZ_EX                                         ~50     ~50, ->61
         59    >   IS_IDENTICAL                                     ~51     !6, 'opcache_hit_rate'
         60        BOOL                                             ~50     ~51
         61    > > JMPZ                                                     ~50, ->68
         62    >   INIT_FCALL                                               'number_format'
         63        SEND_VAR                                                 !5
         64        SEND_VAL                                                 2
         65        DO_ICALL                                         $52     
         66        CONCAT                                           ~53     $52, '%25'
         67        ASSIGN                                                   !5, ~53
  185    68    >   IS_IDENTICAL                                             !6, 'blacklist_miss_ratio'
         69      > JMPZ                                                     ~55, ->76
         70    >   INIT_FCALL                                               'number_format'
         71        SEND_VAR                                                 !5
         72        SEND_VAL                                                 2
         73        DO_ICALL                                         $56     
         74        CONCAT                                           ~57     $56, '%25'
         75        ASSIGN                                                   !5, ~57
  186    76    >   IS_IDENTICAL                                     ~59     !6, 'start_time'
         77      > JMPNZ_EX                                         ~59     ~59, ->80
         78    >   IS_IDENTICAL                                     ~60     !6, 'last_restart_time'
         79        BOOL                                             ~59     ~60
         80    > > JMPZ                                                     ~59, ->90
         81    > > JMPZ                                                     !5, ->88
         82    >   INIT_FCALL                                               'date'
         83        SEND_VAL                                                 'D%2C+d+M+y+H%3Ai%3As+O'
         84        SEND_VAR                                                 !5
         85        DO_ICALL                                         $61     
         86        QM_ASSIGN                                        ~62     $61
         87      > JMP                                                      ->89
         88    >   QM_ASSIGN                                        ~62     'never'
         89    >   ASSIGN                                                   !5, ~62
  188    90    >   ROPE_INIT                                     5  ~65     '%3Ctr%3E%3Cth%3E'
         91        ROPE_ADD                                      1  ~65     ~65, !6
         92        ROPE_ADD                                      2  ~65     ~65, '%3C%2Fth%3E%3Ctd%3E'
         93        ROPE_ADD                                      3  ~65     ~65, !5
         94        ROPE_END                                      4  ~64     ~65, '%3C%2Ftd%3E%3C%2Ftr%3E%0A'
         95        ECHO                                                     ~64
  180    96      > JMP                                                      ->37
         97    >   FE_FREE                                                  $38
  190    98      > JMP                                                      ->29
  192    99    >   TYPE_CHECK                                    4          !3
        100      > JMPZ                                                     ~68, ->102
        101    >   ASSIGN                                                   !3, 'false'
  193   102    >   TYPE_CHECK                                    8          !3
        103      > JMPZ                                                     ~70, ->105
        104    >   ASSIGN                                                   !3, 'true'
  194   105    >   ROPE_INIT                                     5  ~73     '%3Ctr%3E%3Cth%3E'
        106        ROPE_ADD                                      1  ~73     ~73, !4
        107        ROPE_ADD                                      2  ~73     ~73, '%3C%2Fth%3E%3Ctd%3E'
        108        ROPE_ADD                                      3  ~73     ~73, !3
        109        ROPE_END                                      4  ~72     ~73, '%3C%2Ftd%3E%3C%2Ftr%3E%0A'
        110        ECHO                                                     ~72
  176   111      > JMP                                                      ->29
        112    >   FE_FREE                                                  $33
  197   113        ECHO                                                     '%09%09%09%09%3C%2Ftable%3E%0A%09%09%09%3C%2Fdiv%3E%0A%09%09%3C%2Fdiv%3E%0A%0A%09%09%3Cdiv+class%3D%22tab%22%3E%0A%09%09%09%3Cinput+type%3D%22radio%22+id%3D%22tab-config%22+name%3D%22tab-group-1%22%3E%0A%09%09%09%3Clabel+for%3D%22tab-config%22%3EConfiguration%3C%2Flabel%3E%0A%09%09%09%3Cdiv+class%3D%22content%22%3E%0A%09%09%09%09%3Ctable%3E%0A%09%09%09%09%09'
  207   114        FETCH_DIM_R                                      ~76     !0, 'directives'
        115      > FE_RESET_R                                       $77     ~76, ->137
        116    > > FE_FETCH_R                                       ~78     $77, !3, ->137
        117    >   ASSIGN                                                   !4, ~78
  208   118        TYPE_CHECK                                    4          !3
        119      > JMPZ                                                     ~80, ->121
        120    >   ASSIGN                                                   !3, 'false'
  209   121    >   TYPE_CHECK                                    8          !3
        122      > JMPZ                                                     ~82, ->124
        123    >   ASSIGN                                                   !3, 'true'
  210   124    >   IS_EQUAL                                                 !4, 'opcache.memory_consumption'
        125      > JMPZ                                                     ~84, ->130
        126    >   INIT_FCALL                                               'size_for_humans'
        127        SEND_VAR                                                 !3
        128        DO_FCALL                                      0  $85     
        129        ASSIGN                                                   !3, $85
  211   130    >   ROPE_INIT                                     5  ~88     '%3Ctr%3E%3Cth%3E'
        131        ROPE_ADD                                      1  ~88     ~88, !4
        132        ROPE_ADD                                      2  ~88     ~88, '%3C%2Fth%3E%3Ctd%3E'
        133        ROPE_ADD                                      3  ~88     ~88, !3
        134        ROPE_END                                      4  ~87     ~88, '%3C%2Ftd%3E%3C%2Ftr%3E%0A'
        135        ECHO                                                     ~87
  207   136      > JMP                                                      ->116
        137    >   FE_FREE                                                  $77
  214   138        ECHO                                                     '%09%09%09%09%3C%2Ftable%3E%0A%09%09%09%3C%2Fdiv%3E%0A%09%09%3C%2Fdiv%3E%0A%0A%09%09%3Cdiv+class%3D%22tab%22%3E%0A%09%09%09%3Cinput+type%3D%22radio%22+id%3D%22tab-scripts%22+name%3D%22tab-group-1%22%3E%0A%09%09%09%3Clabel+for%3D%22tab-scripts%22%3EScripts+%28'
  220   139        FETCH_DIM_R                                      ~91     !1, 'scripts'
        140        COUNT                                            ~92     ~91
        141        ECHO                                                     ~92
        142        ECHO                                                     '%29%3C%2Flabel%3E%0A%09%09%09%3Cdiv+class%3D%22content%22%3E%0A%09%09%09%09%3Ctable+style%3D%22font-size%3A0.8em%3B%22%3E%0A%09%09%09%09%09%3Ctr%3E%0A%09%09%09%09%09%09%3Cth+width%3D%2210%25%22%3EHits%3C%2Fth%3E%0A%09%09%09%09%09%09%3Cth+width%3D%2220%25%22%3EMemory%3C%2Fth%3E%0A%09%09%09%09%09%09%3Cth+width%3D%2270%25%22%3EPath%3C%2Fth%3E%0A%09%09%09%09%09%3C%2Ftr%3E%0A%09%09%09%09%09'
  229   143        FETCH_DIM_R                                      ~93     !1, 'scripts'
        144      > FE_RESET_R                                       $94     ~93, ->157
        145    > > FE_FETCH_R                                       ~95     $94, !7, ->157
        146    >   ASSIGN                                                   !4, ~95
  230   147        INIT_FCALL                                               'dirname'
        148        SEND_VAR                                                 !4
        149        DO_ICALL                                         $97     
        150        INIT_FCALL                                               'basename'
        151        SEND_VAR                                                 !4
        152        DO_ICALL                                         $99     
        153        FETCH_DIM_W                                      $98     !8, $97
        154        ASSIGN_DIM                                               $98, $99
        155        OP_DATA                                                  !7
  229   156      > JMP                                                      ->145
        157    >   FE_FREE                                                  $94
  233   158        INIT_FCALL                                               'asort'
        159        SEND_REF                                                 !8
        160        DO_ICALL                                                 
  235   161        ASSIGN                                                   !9, 1
  237   162      > FE_RESET_R                                       $103    !8, ->243
        163    > > FE_FETCH_R                                       ~104    $103, !10, ->243
        164    >   ASSIGN                                                   !11, ~104
  238   165        COUNT                                            ~106    !10
        166        ASSIGN                                                   !12, ~106
  239   167        IS_SMALLER                                               1, !12
        168      > JMPZ                                                     ~108, ->171
        169    >   QM_ASSIGN                                        ~109    's'
        170      > JMP                                                      ->172
        171    >   QM_ASSIGN                                        ~109    null
        172    >   ASSIGN                                                   !13, ~109
  240   173        ASSIGN                                                   !14, 0
  241   174      > FE_RESET_R                                       $112    !10, ->180
        175    > > FE_FETCH_R                                       ~113    $112, !7, ->180
        176    >   ASSIGN                                                   !15, ~113
  242   177        FETCH_DIM_R                                      ~115    !7, 'memory_consumption'
        178        ASSIGN_OP                                     1          !14, ~115
  241   179      > JMP                                                      ->175
        180    >   FE_FREE                                                  $112
  244   181        INIT_FCALL                                               'size_for_humans'
        182        SEND_VAR                                                 !14
        183        DO_FCALL                                      0  $117    
        184        ASSIGN                                                   !14, $117
  246   185        IS_SMALLER                                               1, !12
        186      > JMPZ                                                     ~119, ->205
  247   187    >   ECHO                                                     '%3Ctr%3E'
  248   188        ROPE_INIT                                    15  ~121    '%3Cth+class%3D%22clickable%22+id%3D%22head-'
        189        ROPE_ADD                                      1  ~121    ~121, !9
        190        ROPE_ADD                                      2  ~121    ~121, '%22+colspan%3D%223%22+onclick%3D%22toggleVisible%28%27%23head-'
        191        ROPE_ADD                                      3  ~121    ~121, !9
        192        ROPE_ADD                                      4  ~121    ~121, '%27%2C+%27%23row-'
        193        ROPE_ADD                                      5  ~121    ~121, !9
        194        ROPE_ADD                                      6  ~121    ~121, '%27%29%22%3E'
        195        ROPE_ADD                                      7  ~121    ~121, !11
        196        ROPE_ADD                                      8  ~121    ~121, '+%28'
        197        ROPE_ADD                                      9  ~121    ~121, !12
        198        ROPE_ADD                                     10  ~121    ~121, '+file'
        199        ROPE_ADD                                     11  ~121    ~121, !13
        200        ROPE_ADD                                     12  ~121    ~121, '%2C+'
        201        ROPE_ADD                                     13  ~121    ~121, !14
        202        ROPE_END                                     14  ~120    ~121, '%29%3C%2Fth%3E'
        203        ECHO                                                     ~120
  249   204        ECHO                                                     '%3C%2Ftr%3E'
  252   205    > > FE_RESET_R                                       $129    !10, ->240
        206    > > FE_FETCH_R                                       ~130    $129, !7, ->240
        207    >   ASSIGN                                                   !15, ~130
  253   208        ROPE_INIT                                     3  ~133    '%3Ctr+id%3D%22row-'
        209        ROPE_ADD                                      1  ~133    ~133, !9
        210        ROPE_END                                      2  ~132    ~133, '%22%3E'
        211        ECHO                                                     ~132
  254   212        ROPE_INIT                                     3  ~137    '%3Ctd%3E'
        213        FETCH_DIM_R                                      ~135    !7, 'hits'
        214        ROPE_ADD                                      1  ~137    ~137, ~135
        215        ROPE_END                                      2  ~136    ~137, '%3C%2Ftd%3E'
        216        ECHO                                                     ~136
  255   217        INIT_FCALL                                               'size_for_humans'
        218        FETCH_DIM_R                                      ~139    !7, 'memory_consumption'
        219        SEND_VAL                                                 ~139
        220        DO_FCALL                                      0  $140    
        221        CONCAT                                           ~141    '%3Ctd%3E', $140
        222        CONCAT                                           ~142    ~141, '%3C%2Ftd%3E'
        223        ECHO                                                     ~142
  256   224        IS_SMALLER                                               1, !12
        225      > JMPZ                                                     ~143, ->231
        226    >   ROPE_INIT                                     3  ~145    '%3Ctd%3E'
        227        ROPE_ADD                                      1  ~145    ~145, !15
        228        ROPE_END                                      2  ~144    ~145, '%3C%2Ftd%3E'
        229        QM_ASSIGN                                        ~147    ~144
        230      > JMP                                                      ->237
        231    >   ROPE_INIT                                     5  ~149    '%3Ctd%3E'
        232        ROPE_ADD                                      1  ~149    ~149, !11
        233        ROPE_ADD                                      2  ~149    ~149, '%2F'
        234        ROPE_ADD                                      3  ~149    ~149, !15
        235        ROPE_END                                      4  ~148    ~149, '%3C%2Ftd%3E'
        236        QM_ASSIGN                                        ~147    ~148
        237    >   ECHO                                                     ~147
  257   238        ECHO                                                     '%3C%2Ftr%3E'
  252   239      > JMP                                                      ->206
        240    >   FE_FREE                                                  $129
  260   241        PRE_INC                                                  !9
  237   242      > JMP                                                      ->163
        243    >   FE_FREE                                                  $103
  263   244        ECHO                                                     '%09%09%09%09%3C%2Ftable%3E%0A%09%09%09%3C%2Fdiv%3E%0A%09%09%3C%2Fdiv%3E%0A%0A%09%3C%2Fdiv%3E%0A%0A%09%3Cdiv+id%3D%22graph%22%3E%0A%09%09%3Cform%3E%0A%09%09%09%3Clabel%3E%3Cinput+type%3D%22radio%22+name%3D%22dataset%22+value%3D%22memory%22+checked%3E+Memory%3C%2Flabel%3E%0A%09%09%09%3Clabel%3E%3Cinput+type%3D%22radio%22+name%3D%22dataset%22+value%3D%22keys%22%3E+Keys%3C%2Flabel%3E%0A%09%09%09%3Clabel%3E%3Cinput+type%3D%22radio%22+name%3D%22dataset%22+value%3D%22hits%22%3E+Hits%3C%2Flabel%3E%0A%09%09%3C%2Fform%3E%0A%0A%09%09%

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
164.15 ms | 1431 KiB | 31 Q