3v4l.org

run code in 300+ PHP versions simultaneously
<?php $Value = 'rId4'; $rels= new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet2.xml"/><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet1.xml"/><Relationship Id="rId5" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings" Target="sharedStrings.xml"/><Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/></Relationships>'); $rels->registerXPathNamespace('r', 'http://schemas.openxmlformats.org/package/2006/relationships'); $elems = $rels->xpath('/r:Relationships/r:Relationship[@Id and @Target and @Type = \'http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet\']'); print_r($elems); $map = []; foreach ( $elems as $elem ) { $map[(string)$elem->Id] = (string)$elem->Target; } print_r($map);
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 18, Position 2 = 26
Branch analysis from position: 18
2 jumps found. (Code = 78) Position 1 = 19, Position 2 = 26
Branch analysis from position: 19
1 jumps found. (Code = 42) Position 1 = 18
Branch analysis from position: 18
Branch analysis from position: 26
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 26
filename:       /in/4J6Vm
function name:  (null)
number of ops:  31
compiled vars:  !0 = $Value, !1 = $rels, !2 = $elems, !3 = $map, !4 = $elem
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 'rId4'
    3     1        NEW                                              $6      'SimpleXMLElement'
          2        SEND_VAL_EX                                              '%3C%3Fxml+version%3D%221.0%22+encoding%3D%22UTF-8%22+standalone%3D%22yes%22%3F%3E%0A%3CRelationships+xmlns%3D%22http%3A%2F%2Fschemas.openxmlformats.org%2Fpackage%2F2006%2Frelationships%22%3E%3CRelationship+Id%3D%22rId3%22+Type%3D%22http%3A%2F%2Fschemas.openxmlformats.org%2FofficeDocument%2F2006%2Frelationships%2Ftheme%22+Target%3D%22theme%2Ftheme1.xml%22%2F%3E%3CRelationship+Id%3D%22rId2%22+Type%3D%22http%3A%2F%2Fschemas.openxmlformats.org%2FofficeDocument%2F2006%2Frelationships%2Fworksheet%22+Target%3D%22worksheets%2Fsheet2.xml%22%2F%3E%3CRelationship+Id%3D%22rId1%22+Type%3D%22http%3A%2F%2Fschemas.openxmlformats.org%2FofficeDocument%2F2006%2Frelationships%2Fworksheet%22+Target%3D%22worksheets%2Fsheet1.xml%22%2F%3E%3CRelationship+Id%3D%22rId5%22+Type%3D%22http%3A%2F%2Fschemas.openxmlformats.org%2FofficeDocument%2F2006%2Frelationships%2FsharedStrings%22+Target%3D%22sharedStrings.xml%22%2F%3E%3CRelationship+Id%3D%22rId4%22+Type%3D%22http%3A%2F%2Fschemas.openxmlformats.org%2FofficeDocument%2F2006%2Frelationships%2Fstyles%22+Target%3D%22styles.xml%22%2F%3E%3C%2FRelationships%3E'
          3        DO_FCALL                                      0          
          4        ASSIGN                                                   !1, $6
    6     5        INIT_METHOD_CALL                                         !1, 'registerXPathNamespace'
          6        SEND_VAL_EX                                              'r'
          7        SEND_VAL_EX                                              'http%3A%2F%2Fschemas.openxmlformats.org%2Fpackage%2F2006%2Frelationships'
          8        DO_FCALL                                      0          
    7     9        INIT_METHOD_CALL                                         !1, 'xpath'
         10        SEND_VAL_EX                                              '%2Fr%3ARelationships%2Fr%3ARelationship%5B%40Id+and+%40Target+and+%40Type+%3D+%27http%3A%2F%2Fschemas.openxmlformats.org%2FofficeDocument%2F2006%2Frelationships%2Fworksheet%27%5D'
         11        DO_FCALL                                      0  $10     
         12        ASSIGN                                                   !2, $10
    9    13        INIT_FCALL                                               'print_r'
         14        SEND_VAR                                                 !2
         15        DO_ICALL                                                 
   11    16        ASSIGN                                                   !3, <array>
   12    17      > FE_RESET_R                                       $14     !2, ->26
         18    > > FE_FETCH_R                                               $14, !4, ->26
   14    19    >   FETCH_OBJ_R                                      ~15     !4, 'Id'
         20        CAST                                          6  ~16     ~15
         21        FETCH_OBJ_R                                      ~18     !4, 'Target'
         22        CAST                                          6  ~19     ~18
         23        ASSIGN_DIM                                               !3, ~16
         24        OP_DATA                                                  ~19
   12    25      > JMP                                                      ->18
         26    >   FE_FREE                                                  $14
   17    27        INIT_FCALL                                               'print_r'
         28        SEND_VAR                                                 !3
         29        DO_ICALL                                                 
         30      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
171.15 ms | 1400 KiB | 15 Q