3v4l.org

run code in 300+ PHP versions simultaneously
<?php function xml2assoc($obj, &$arr) { $children = $obj->children(); foreach ( $children as $elementName => $node ) { if (!isset($arr[$elementName])) { $arr[$elementName] = array(); } $temp = array(); $attributes = $node->attributes(); foreach ( $attributes as $attributeName => $attributeValue ) { $attribName = strtolower(trim((string) $attributeName)); $attribVal = trim((string) $attributeValue); $temp[$attribName] = $attribVal; } $text = (string) $node; $text = trim($text); if (strlen($text) > 0) { $temp ['text='] = $text; } $arr[$elementName][] = $temp; $nextIdx = count($arr[$elementName]); xml2assoc($node, $arr[$elementName][$nextIdx - 1]); } return; } $xml = "<TABLA-INSCRIPCION><T-REG-MERC-FIRMA><Z-NIFCIF-IS>P1.1</Z-NIFCIF-IS><Z-ISCRIZIONE-IS>P2.1</Z-ISCRIZIONE-IS><Z-FIRMATARIO-IS>P3.1</Z-FIRMATARIO-IS><Z-COD-FISC-FIRMAT-IS>P4.1</Z-COD-FISC-FIRMAT-IS><Z-STRINGA-IS>P5.1</Z-STRINGA-IS><Z-NUM-PROTOCOLLO-IS>P6.1</Z-NUM-PROTOCOLLO-IS><Z-DATA-PROTOCOLLO-IS>P7.1</Z-DATA-PROTOCOLLO-IS><Z-NOTAIO-FIRMAT-IS>P8.1</Z-NOTAIO-FIRMAT-IS><Z-FIRMATARIO-I2>P9.1</Z-FIRMATARIO-I2><Z-COD-FISC-FIRMAT-I2>P10.1</Z-COD-FISC-FIRMAT-I2><Z-STRINGA-I2>P11.1</Z-STRINGA-I2><Z-NUM-PROTOCOLLO-I2>P12.1</Z-NUM-PROTOCOLLO-I2><Z-DATA-PROTOCOLLO-I2>P13.1</Z-DATA-PROTOCOLLO-I2><Z-NOTAIO-FIRMAT-I2>P14.1</Z-NOTAIO-FIRMAT-I2></T-REG-MERC-FIRMA><T-REG-MERC-FIRMA><Z-NIFCIF-IS>P1.2</Z-NIFCIF-IS><Z-ISCRIZIONE-IS>P2.2</Z-ISCRIZIONE-IS><Z-FIRMATARIO-IS>P3.2</Z-FIRMATARIO-IS><Z-COD-FISC-FIRMAT-IS>P4.2</Z-COD-FISC-FIRMAT-IS><Z-STRINGA-IS>P5.2</Z-STRINGA-IS><Z-NUM-PROTOCOLLO-IS>P6.2</Z-NUM-PROTOCOLLO-IS><Z-DATA-PROTOCOLLO-IS>P7.2</Z-DATA-PROTOCOLLO-IS><Z-NOTAIO-FIRMAT-IS>P8.2</Z-NOTAIO-FIRMAT-IS><Z-FIRMATARIO-I2>P9.2</Z-FIRMATARIO-I2><Z-COD-FISC-FIRMAT-I2>P10.2</Z-COD-FISC-FIRMAT-I2><Z-STRINGA-I2>P11.2</Z-STRINGA-I2><Z-NUM-PROTOCOLLO-I2>P12.2</Z-NUM-PROTOCOLLO-I2><Z-DATA-PROTOCOLLO-I2>P13.2</Z-DATA-PROTOCOLLO-I2><Z-NOTAIO-FIRMAT-I2>P14.2</Z-NOTAIO-FIRMAT-I2></T-REG-MERC-FIRMA><T-REG-MERC-FIRMA><Z-NIFCIF-IS>P1.3</Z-NIFCIF-IS><Z-ISCRIZIONE-IS>P2.3</Z-ISCRIZIONE-IS><Z-FIRMATARIO-IS>P3.3</Z-FIRMATARIO-IS><Z-COD-FISC-FIRMAT-IS>P4.3</Z-COD-FISC-FIRMAT-IS><Z-STRINGA-IS>P5.3</Z-STRINGA-IS><Z-NUM-PROTOCOLLO-IS>P6.3</Z-NUM-PROTOCOLLO-IS><Z-DATA-PROTOCOLLO-IS>P7.3</Z-DATA-PROTOCOLLO-IS><Z-NOTAIO-FIRMAT-IS>P8.3</Z-NOTAIO-FIRMAT-IS><Z-FIRMATARIO-I2>P9.3</Z-FIRMATARIO-I2><Z-COD-FISC-FIRMAT-I2>P10.3</Z-COD-FISC-FIRMAT-I2><Z-STRINGA-I2>P11.3</Z-STRINGA-I2><Z-NUM-PROTOCOLLO-I2>P12.3</Z-NUM-PROTOCOLLO-I2><Z-DATA-PROTOCOLLO-I2>P13.3</Z-DATA-PROTOCOLLO-I2><Z-NOTAIO-FIRMAT-I2>P14.3</Z-NOTAIO-FIRMAT-I2></T-REG-MERC-FIRMA><T-REG-MERC-FIRMA><Z-NIFCIF-IS>P1.4</Z-NIFCIF-IS><Z-ISCRIZIONE-IS>P2.4</Z-ISCRIZIONE-IS><Z-FIRMATARIO-IS>P3.4</Z-FIRMATARIO-IS><Z-COD-FISC-FIRMAT-IS>P4.4</Z-COD-FISC-FIRMAT-IS><Z-STRINGA-IS>P5.4</Z-STRINGA-IS><Z-NUM-PROTOCOLLO-IS>P6.4</Z-NUM-PROTOCOLLO-IS><Z-DATA-PROTOCOLLO-IS>P7.4</Z-DATA-PROTOCOLLO-IS><Z-NOTAIO-FIRMAT-IS>P8.4</Z-NOTAIO-FIRMAT-IS><Z-FIRMATARIO-I2>P9.4</Z-FIRMATARIO-I2><Z-COD-FISC-FIRMAT-I2>P10.4</Z-COD-FISC-FIRMAT-I2><Z-STRINGA-I2>P11.4</Z-STRINGA-I2><Z-NUM-PROTOCOLLO-I2>P12.4</Z-NUM-PROTOCOLLO-I2><Z-DATA-PROTOCOLLO-I2>P13.4</Z-DATA-PROTOCOLLO-I2><Z-NOTAIO-FIRMAT-I2>P14.4</Z-NOTAIO-FIRMAT-I2></T-REG-MERC-FIRMA><T-REG-MERC-FIRMA><Z-NIFCIF-IS>P1.5</Z-NIFCIF-IS><Z-ISCRIZIONE-IS>P2.5</Z-ISCRIZIONE-IS><Z-FIRMATARIO-IS>P3.5</Z-FIRMATARIO-IS><Z-COD-FISC-FIRMAT-IS>P4.5</Z-COD-FISC-FIRMAT-IS><Z-STRINGA-IS>P5.5</Z-STRINGA-IS><Z-NUM-PROTOCOLLO-IS>P6.5</Z-NUM-PROTOCOLLO-IS><Z-DATA-PROTOCOLLO-IS>P7.5</Z-DATA-PROTOCOLLO-IS><Z-NOTAIO-FIRMAT-IS>P8.5</Z-NOTAIO-FIRMAT-IS><Z-FIRMATARIO-I2>P9.5</Z-FIRMATARIO-I2><Z-COD-FISC-FIRMAT-I2>P10.5</Z-COD-FISC-FIRMAT-I2><Z-STRINGA-I2>P11.5</Z-STRINGA-I2><Z-NUM-PROTOCOLLO-I2>P12.5</Z-NUM-PROTOCOLLO-I2><Z-DATA-PROTOCOLLO-I2>P13.5</Z-DATA-PROTOCOLLO-I2><Z-NOTAIO-FIRMAT-I2>P14.5</Z-NOTAIO-FIRMAT-I2></T-REG-MERC-FIRMA><T-REG-MERC-FIRMA><Z-NIFCIF-IS>P1.6</Z-NIFCIF-IS><Z-ISCRIZIONE-IS>P2.6</Z-ISCRIZIONE-IS><Z-FIRMATARIO-IS>P3.6</Z-FIRMATARIO-IS><Z-COD-FISC-FIRMAT-IS>P4.6</Z-COD-FISC-FIRMAT-IS><Z-STRINGA-IS>P5.6</Z-STRINGA-IS><Z-NUM-PROTOCOLLO-IS>P6.6</Z-NUM-PROTOCOLLO-IS><Z-DATA-PROTOCOLLO-IS>P7.6</Z-DATA-PROTOCOLLO-IS><Z-NOTAIO-FIRMAT-IS>P8.6</Z-NOTAIO-FIRMAT-IS><Z-FIRMATARIO-I2>P9.6</Z-FIRMATARIO-I2><Z-COD-FISC-FIRMAT-I2>P10.6</Z-COD-FISC-FIRMAT-I2><Z-STRINGA-I2>P11.6</Z-STRINGA-I2><Z-NUM-PROTOCOLLO-I2>P12.6</Z-NUM-PROTOCOLLO-I2><Z-DATA-PROTOCOLLO-I2>P13.6</Z-DATA-PROTOCOLLO-I2><Z-NOTAIO-FIRMAT-I2>P14.6</Z-NOTAIO-FIRMAT-I2></T-REG-MERC-FIRMA></TABLA-INSCRIPCION>"; $x = simplexml_load_string ($xml) ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/gZ4rf
function name:  (null)
number of ops:  6
compiled vars:  !0 = $xml, !1 = $x
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   28     0  E >   ASSIGN                                                   !0, '%3CTABLA-INSCRIPCION%3E%3CT-REG-MERC-FIRMA%3E%3CZ-NIFCIF-IS%3EP1.1%3C%2FZ-NIFCIF-IS%3E%3CZ-ISCRIZIONE-IS%3EP2.1%3C%2FZ-ISCRIZIONE-IS%3E%3CZ-FIRMATARIO-IS%3EP3.1%3C%2FZ-FIRMATARIO-IS%3E%3CZ-COD-FISC-FIRMAT-IS%3EP4.1%3C%2FZ-COD-FISC-FIRMAT-IS%3E%3CZ-STRINGA-IS%3EP5.1%3C%2FZ-STRINGA-IS%3E%3CZ-NUM-PROTOCOLLO-IS%3EP6.1%3C%2FZ-NUM-PROTOCOLLO-IS%3E%3CZ-DATA-PROTOCOLLO-IS%3EP7.1%3C%2FZ-DATA-PROTOCOLLO-IS%3E%3CZ-NOTAIO-FIRMAT-IS%3EP8.1%3C%2FZ-NOTAIO-FIRMAT-IS%3E%3CZ-FIRMATARIO-I2%3EP9.1%3C%2FZ-FIRMATARIO-I2%3E%3CZ-COD-FISC-FIRMAT-I2%3EP10.1%3C%2FZ-COD-FISC-FIRMAT-I2%3E%3CZ-STRINGA-I2%3EP11.1%3C%2FZ-STRINGA-I2%3E%3CZ-NUM-PROTOCOLLO-I2%3EP12.1%3C%2FZ-NUM-PROTOCOLLO-I2%3E%3CZ-DATA-PROTOCOLLO-I2%3EP13.1%3C%2FZ-DATA-PROTOCOLLO-I2%3E%3CZ-NOTAIO-FIRMAT-I2%3EP14.1%3C%2FZ-NOTAIO-FIRMAT-I2%3E%3C%2FT-REG-MERC-FIRMA%3E%3CT-REG-MERC-FIRMA%3E%3CZ-NIFCIF-IS%3EP1.2%3C%2FZ-NIFCIF-IS%3E%3CZ-ISCRIZIONE-IS%3EP2.2%3C%2FZ-ISCRIZIONE-IS%3E%3CZ-FIRMATARIO-IS%3EP3.2%3C%2FZ-FIRMATARIO-IS%3E%3CZ-COD-FISC-FIRMAT-IS%3EP4.2%3C%2FZ-COD-FISC-FIRMAT-IS%3E%3CZ-STRINGA-IS%3EP5.2%3C%2FZ-STRINGA-IS%3E%3CZ-NUM-PROTOCOLLO-IS%3EP6.2%3C%2FZ-NUM-PROTOCOLLO-IS%3E%3CZ-DATA-PROTOCOLLO-IS%3EP7.2%3C%2FZ-DATA-PROTOCOLLO-IS%3E%3CZ-NOTAIO-FIRMAT-IS%3EP8.2%3C%2FZ-NOTAIO-FIRMAT-IS%3E%3CZ-FIRMATARIO-I2%3EP9.2%3C%2FZ-FIRMATARIO-I2%3E%3CZ-COD-FISC-FIRMAT-I2%3EP10.2%3C%2FZ-COD-FISC-FIRMAT-I2%3E%3CZ-STRINGA-I2%3EP11.2%3C%2FZ-STRINGA-I2%3E%3CZ-NUM-PROTOCOLLO-I2%3EP12.2%3C%2FZ-NUM-PROTOCOLLO-I2%3E%3CZ-DATA-PROTOCOLLO-I2%3EP13.2%3C%2FZ-DATA-PROTOCOLLO-I2%3E%3CZ-NOTAIO-FIRMAT-I2%3EP14.2%3C%2FZ-NOTAIO-FIRMAT-I2%3E%3C%2FT-REG-MERC-FIRMA%3E%3CT-REG-MERC-FIRMA%3E%3CZ-NIFCIF-IS%3EP1.3%3C%2FZ-NIFCIF-IS%3E%3CZ-ISCRIZIONE-IS%3EP2.3%3C%2FZ-ISCRIZIONE-IS%3E%3CZ-FIRMATARIO-IS%3EP3.3%3C%2FZ-FIRMATARIO-IS%3E%3CZ-COD-FISC-FIRMAT-IS%3EP4.3%3C%2FZ-COD-FISC-FIRMAT-IS%3E%3CZ-STRINGA-IS%3EP5.3%3C%2FZ-STRINGA-IS%3E%3CZ-NUM-PROTOCOLLO-IS%3EP6.3%3C%2FZ-NUM-PROTOCOLLO-IS%3E%3CZ-DATA-PROTOCOLLO-IS%3EP7.3%3C%2FZ-DATA-PROTOCOLLO-IS%3E%3CZ-NOTAIO-FIRMAT-IS%3EP8.3%3C%2FZ-NOTAIO-FIRMAT-IS%3E%3CZ-FIRMATARIO-I2%3EP9.3%3C%2FZ-FIRMATARIO-I2%3E%3CZ-COD-FISC-FIRMAT-I2%3EP10.3%3C%2FZ-COD-FISC-FIRMAT-I2%3E%3CZ-STRINGA-I2%3EP11.3%3C%2FZ-STRINGA-I2%3E%3CZ-NUM-PROTOCOLLO-I2%3EP12.3%3C%2FZ-NUM-PROTOCOLLO-I2%3E%3CZ-DATA-PROTOCOLLO-I2%3EP13.3%3C%2FZ-DATA-PROTOCOLLO-I2%3E%3CZ-NOTAIO-FIRMAT-I2%3EP14.3%3C%2FZ-NOTAIO-FIRMAT-I2%3E%3C%2FT-REG-MERC-FIRMA%3E%3CT-REG-MERC-FIRMA%3E%3CZ-NIFCIF-IS%3EP1.4%3C%2FZ-NIFCIF-IS%3E%3CZ-ISCRIZIONE-IS%3EP2.4%3C%2FZ-ISCRIZIONE-IS%3E%3CZ-FIRMATARIO-IS%3EP3.4%3C%2FZ-FIRMATARIO-IS%3E%3CZ-COD-FISC-FIRMAT-IS%3EP4.4%3C%2FZ-COD-FISC-FIRMAT-IS%3E%3CZ-STRINGA-IS%3EP5.4%3C%2FZ-STRINGA-IS%3E%3CZ-NUM-PROTOCOLLO-IS%3EP6.4%3C%2FZ-NUM-PROTOCOLLO-IS%3E%3CZ-DATA-PROTOCOLLO-IS%3EP7.4%3C%2FZ-DATA-PROTOCOLLO-IS%3E%3CZ-NOTAIO-FIRMAT-IS%3EP8.4%3C%2FZ-NOTAIO-FIRMAT-IS%3E%3CZ-FIRMATARIO-I2%3EP9.4%3C%2FZ-FIRMATARIO-I2%3E%3CZ-COD-FISC-FIRMAT-I2%3EP10.4%3C%2FZ-COD-FISC-FIRMAT-I2%3E%3CZ-STRINGA-I2%3EP11.4%3C%2FZ-STRINGA-I2%3E%3CZ-NUM-PROTOCOLLO-I2%3EP12.4%3C%2FZ-NUM-PROTOCOLLO-I2%3E%3CZ-DATA-PROTOCOLLO-I2%3EP13.4%3C%2FZ-DATA-PROTOCOLLO-I2%3E%3CZ-NOTAIO-FIRMAT-I2%3EP14.4%3C%2FZ-NOTAIO-FIRMAT-I2%3E%3C%2FT-REG-MERC-FIRMA%3E%3CT-REG-MERC-FIRMA%3E%3CZ-NIFCIF-IS%3EP1.5%3C%2FZ-NIFCIF-IS%3E%3CZ-ISCRIZIONE-IS%3EP2.5%3C%2FZ-ISCRIZIONE-IS%3E%3CZ-FIRMATARIO-IS%3EP3.5%3C%2FZ-FIRMATARIO-IS%3E%3CZ-COD-FISC-FIRMAT-IS%3EP4.5%3C%2FZ-COD-FISC-FIRMAT-IS%3E%3CZ-STRINGA-IS%3EP5.5%3C%2FZ-STRINGA-IS%3E%3CZ-NUM-PROTOCOLLO-IS%3EP6.5%3C%2FZ-NUM-PROTOCOLLO-IS%3E%3CZ-DATA-PROTOCOLLO-IS%3EP7.5%3C%2FZ-DATA-PROTOCOLLO-IS%3E%3CZ-NOTAIO-FIRMAT-IS%3EP8.5%3C%2FZ-NOTAIO-FIRMAT-IS%3E%3CZ-FIRMATARIO-I2%3EP9.5%3C%2FZ-FIRMATARIO-I2%3E%3CZ-COD-FISC-FIRMAT-I2%3EP10.5%3C%2FZ-COD-FISC-FIRMAT-I2%3E%3CZ-STRINGA-I2%3EP11.5%3C%2FZ-STRINGA-I2%3E%3CZ-NUM-PROTOCOLLO-I2%3EP12.5%3C%2FZ-NUM-PROTOCOLLO-I2%3E%3CZ-DATA-PROTOCOLLO-I2%3EP13.5%3C%2FZ-DATA-PROTOCOLLO-I2%3E%3CZ-NOTAIO-FIRMAT-I2%3EP14.5%3C%2FZ-NOTAIO-FIRMAT-I2%3E%3C%2FT-REG-MERC-FIRMA%3E%3CT-REG-MERC-FIRMA%3E%3CZ-NIFCIF-IS%3EP1.6%3C%2FZ-NIFCIF-IS%3E%3CZ-ISCRIZIONE-IS%3EP2.6%3C%2FZ-ISCRIZIONE-IS%3E%3CZ-FIRMATARIO-IS%3EP3.6%3C%2FZ-FIRMATARIO-IS%3E%3CZ-COD-FISC-FIRMAT-IS%3EP4.6%3C%2FZ-COD-FISC-FIRMAT-IS%3E%3CZ-STRINGA-IS%3EP5.6%3C%2FZ-STRINGA-IS%3E%3CZ-NUM-PROTOCOLLO-IS%3EP6.6%3C%2FZ-NUM-PROTOCOLLO-IS%3E%3CZ-DATA-PROTOCOLLO-IS%3EP7.6%3C%2FZ-DATA-PROTOCOLLO-IS%3E%3CZ-NOTAIO-FIRMAT-IS%3EP8.6%3C%2FZ-NOTAIO-FIRMAT-IS%3E%3CZ-FIRMATARIO-I2%3EP9.6%3C%2FZ-FIRMATARIO-I2%3E%3CZ-COD-FISC-FIRMAT-I2%3EP10.6%3C%2FZ-COD-FISC-FIRMAT-I2%3E%3CZ-STRINGA-I2%3EP11.6%3C%2FZ-STRINGA-I2%3E%3CZ-NUM-PROTOCOLLO-I2%3EP12.6%3C%2FZ-NUM-PROTOCOLLO-I2%3E%3CZ-DATA-PROTOCOLLO-I2%3EP13.6%3C%2FZ-DATA-PROTOCOLLO-I2%3E%3CZ-NOTAIO-FIRMAT-I2%3EP14.6%3C%2FZ-NOTAIO-FIRMAT-I2%3E%3C%2FT-REG-MERC-FIRMA%3E%3C%2FTABLA-INSCRIPCION%3E'
   30     1        INIT_FCALL                                               'simplexml_load_string'
          2        SEND_VAR                                                 !0
          3        DO_ICALL                                         $3      
          4        ASSIGN                                                   !1, $3
   35     5      > RETURN                                                   1

Function xml2assoc:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 6, Position 2 = 63
Branch analysis from position: 6
2 jumps found. (Code = 78) Position 1 = 7, Position 2 = 63
Branch analysis from position: 7
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 13
Branch analysis from position: 11
2 jumps found. (Code = 77) Position 1 = 18, Position 2 = 36
Branch analysis from position: 18
2 jumps found. (Code = 78) Position 1 = 19, Position 2 = 36
Branch analysis from position: 19
1 jumps found. (Code = 42) Position 1 = 18
Branch analysis from position: 18
Branch analysis from position: 36
2 jumps found. (Code = 43) Position 1 = 46, Position 2 = 48
Branch analysis from position: 46
1 jumps found. (Code = 42) Position 1 = 6
Branch analysis from position: 6
Branch analysis from position: 48
Branch analysis from position: 36
Branch analysis from position: 13
Branch analysis from position: 63
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 63
filename:       /in/gZ4rf
function name:  xml2assoc
number of ops:  66
compiled vars:  !0 = $obj, !1 = $arr, !2 = $children, !3 = $node, !4 = $elementName, !5 = $temp, !6 = $attributes, !7 = $attributeValue, !8 = $attributeName, !9 = $attribName, !10 = $attribVal, !11 = $text, !12 = $nextIdx
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
          1        RECV                                             !1      
    3     2        INIT_METHOD_CALL                                         !0, 'children'
          3        DO_FCALL                                      0  $13     
          4        ASSIGN                                                   !2, $13
    4     5      > FE_RESET_R                                       $15     !2, ->63
          6    > > FE_FETCH_R                                       ~16     $15, !3, ->63
          7    >   ASSIGN                                                   !4, ~16
    6     8        ISSET_ISEMPTY_DIM_OBJ                         0  ~18     !1, !4
          9        BOOL_NOT                                         ~19     ~18
         10      > JMPZ                                                     ~19, ->13
    7    11    >   ASSIGN_DIM                                               !1, !4
         12        OP_DATA                                                  <array>
    9    13    >   ASSIGN                                                   !5, <array>
   10    14        INIT_METHOD_CALL                                         !3, 'attributes'
         15        DO_FCALL                                      0  $22     
         16        ASSIGN                                                   !6, $22
   11    17      > FE_RESET_R                                       $24     !6, ->36
         18    > > FE_FETCH_R                                       ~25     $24, !7, ->36
         19    >   ASSIGN                                                   !8, ~25
   12    20        INIT_FCALL                                               'strtolower'
         21        INIT_FCALL                                               'trim'
         22        CAST                                          6  ~27     !8
         23        SEND_VAL                                                 ~27
         24        DO_ICALL                                         $28     
         25        SEND_VAR                                                 $28
         26        DO_ICALL                                         $29     
         27        ASSIGN                                                   !9, $29
   13    28        INIT_FCALL                                               'trim'
         29        CAST                                          6  ~31     !7
         30        SEND_VAL                                                 ~31
         31        DO_ICALL                                         $32     
         32        ASSIGN                                                   !10, $32
   14    33        ASSIGN_DIM                                               !5, !9
         34        OP_DATA                                                  !10
   11    35      > JMP                                                      ->18
         36    >   FE_FREE                                                  $24
   16    37        CAST                                          6  ~35     !3
         38        ASSIGN                                                   !11, ~35
   17    39        INIT_FCALL                                               'trim'
         40        SEND_VAR                                                 !11
         41        DO_ICALL                                         $37     
         42        ASSIGN                                                   !11, $37
   18    43        STRLEN                                           ~39     !11
         44        IS_SMALLER                                               0, ~39
         45      > JMPZ                                                     ~40, ->48
   19    46    >   ASSIGN_DIM                                               !5, 'text%3D'
         47        OP_DATA                                                  !11
   21    48    >   FETCH_DIM_W                                      $42     !1, !4
         49        ASSIGN_DIM                                               $42
         50        OP_DATA                                                  !5
   22    51        FETCH_DIM_R                                      ~44     !1, !4
         52        COUNT                                            ~45     ~44
         53        ASSIGN                                                   !12, ~45
   23    54        INIT_FCALL_BY_NAME                                       'xml2assoc'
         55        SEND_VAR_EX                                              !3
         56        CHECK_FUNC_ARG                                           
         57        SUB                                              ~48     !12, 1
         58        FETCH_DIM_FUNC_ARG                               $47     !1, !4
         59        FETCH_DIM_FUNC_ARG                               $49     $47, ~48
         60        SEND_FUNC_ARG                                            $49
         61        DO_FCALL                                      0          
    4    62      > JMP                                                      ->6
         63    >   FE_FREE                                                  $15
   25    64      > RETURN                                                   null
   26    65*     > RETURN                                                   null

End of function xml2assoc

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
157.67 ms | 1408 KiB | 19 Q