3v4l.org

run code in 300+ PHP versions simultaneously
<?php $d = new DOMDocument(); $xs = '<?xml version="1.0" ?><root><foo /></root>'; $d->loadXML($xs); $x = new DOMXPath($d); // simple eval var_dump($x->evaluate('false()')); // complex but valid eval var_dump($x->evaluate('count(//foo)=0')); // bad eval var_dump($x->evaluate(')')); print_r(error_get_last());
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/fgMTl
function name:  (null)
number of ops:  35
compiled vars:  !0 = $d, !1 = $xs, !2 = $x
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   NEW                                              $3      'DOMDocument'
          1        DO_FCALL                                      0          
          2        ASSIGN                                                   !0, $3
    4     3        ASSIGN                                                   !1, '%3C%3Fxml+version%3D%221.0%22+%3F%3E%3Croot%3E%3Cfoo+%2F%3E%3C%2Froot%3E'
    5     4        INIT_METHOD_CALL                                         !0, 'loadXML'
          5        SEND_VAR_EX                                              !1
          6        DO_FCALL                                      0          
    6     7        NEW                                              $8      'DOMXPath'
          8        SEND_VAR_EX                                              !0
          9        DO_FCALL                                      0          
         10        ASSIGN                                                   !2, $8
    9    11        INIT_FCALL                                               'var_dump'
         12        INIT_METHOD_CALL                                         !2, 'evaluate'
         13        SEND_VAL_EX                                              'false%28%29'
         14        DO_FCALL                                      0  $11     
         15        SEND_VAR                                                 $11
         16        DO_ICALL                                                 
   12    17        INIT_FCALL                                               'var_dump'
         18        INIT_METHOD_CALL                                         !2, 'evaluate'
         19        SEND_VAL_EX                                              'count%28%2F%2Ffoo%29%3D0'
         20        DO_FCALL                                      0  $13     
         21        SEND_VAR                                                 $13
         22        DO_ICALL                                                 
   15    23        INIT_FCALL                                               'var_dump'
         24        INIT_METHOD_CALL                                         !2, 'evaluate'
         25        SEND_VAL_EX                                              '%29'
         26        DO_FCALL                                      0  $15     
         27        SEND_VAR                                                 $15
         28        DO_ICALL                                                 
   16    29        INIT_FCALL                                               'print_r'
         30        INIT_FCALL                                               'error_get_last'
         31        DO_ICALL                                         $17     
         32        SEND_VAR                                                 $17
         33        DO_ICALL                                                 
         34      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
140.14 ms | 944 KiB | 20 Q