3v4l.org

run code in 300+ PHP versions simultaneously
<?php $xmlrequest = new DOMDocument; $xmlrequest->preserveWhiteSpace = false; $xmlrequest->loadXML(<<<XML <?xml version="1.0"?> <request> <APP-ID>166533e56</APP-ID> </request> XML ); $rootNode = $xmlrequest->documentElement; $request_root = $rootNode->getElementsByTagName("request"); foreach($xmldata as $k => $v){ $rootElt = $xmlrequest->createElement('email'); $subNode = $rootNode->appendChild($rootElt); $subrootElt = $xmlrequest->createElement('recipient'); $subsubNode = $subNode->appendChild($subrootElt); $textNode = $xmlrequest->createTextNode(md5(strtolower($v->contacts_emailaddress))); $subsubNode->appendChild($textNode); $subrootElt = $xmlrequest->createElement('list'); $subsub2Node = $subNode->appendChild($subrootElt); $textNode = $xmlrequest->createTextNode($this->list_id); $subsub2Node->appendChild($textNode); $subrootElt = $xmlrequest->createElement('domain'); $subsub3Node = $subNode->appendChild($subrootElt); $textNode = $xmlrequest->createTextNode($v->contacts_domainname); $subsub3Node->appendChild($textNode); } $xmlrequest->formatOutput = true; //$domDoc->save('config.xml'); echo $xmlrequest->saveXML(); /*$xmlrequest .= "</request>".'<br/>';*/ return $xmlrequest;
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 15, Position 2 = 83
Branch analysis from position: 15
2 jumps found. (Code = 78) Position 1 = 16, Position 2 = 83
Branch analysis from position: 16
1 jumps found. (Code = 42) Position 1 = 15
Branch analysis from position: 15
Branch analysis from position: 83
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 83
filename:       /in/tY0io
function name:  (null)
number of ops:  91
compiled vars:  !0 = $xmlrequest, !1 = $rootNode, !2 = $request_root, !3 = $xmldata, !4 = $v, !5 = $k, !6 = $rootElt, !7 = $subNode, !8 = $subrootElt, !9 = $subsubNode, !10 = $textNode, !11 = $subsub2Node, !12 = $subsub3Node
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   NEW                                              $13     'DOMDocument'
          1        DO_FCALL                                      0          
          2        ASSIGN                                                   !0, $13
    3     3        ASSIGN_OBJ                                               !0, 'preserveWhiteSpace'
          4        OP_DATA                                                  <false>
    4     5        INIT_METHOD_CALL                                         !0, 'loadXML'
    5     6        SEND_VAL_EX                                              '%3C%3Fxml+version%3D%221.0%22%3F%3E%0A%3Crequest%3E%0A++%3CAPP-ID%3E166533e56%3C%2FAPP-ID%3E%0A%3C%2Frequest%3E'
          7        DO_FCALL                                      0          
   11     8        FETCH_OBJ_R                                      ~18     !0, 'documentElement'
          9        ASSIGN                                                   !1, ~18
   12    10        INIT_METHOD_CALL                                         !1, 'getElementsByTagName'
         11        SEND_VAL_EX                                              'request'
         12        DO_FCALL                                      0  $20     
         13        ASSIGN                                                   !2, $20
   13    14      > FE_RESET_R                                       $22     !3, ->83
         15    > > FE_FETCH_R                                       ~23     $22, !4, ->83
         16    >   ASSIGN                                                   !5, ~23
   14    17        INIT_METHOD_CALL                                         !0, 'createElement'
         18        SEND_VAL_EX                                              'email'
         19        DO_FCALL                                      0  $25     
         20        ASSIGN                                                   !6, $25
   15    21        INIT_METHOD_CALL                                         !1, 'appendChild'
         22        SEND_VAR_EX                                              !6
         23        DO_FCALL                                      0  $27     
         24        ASSIGN                                                   !7, $27
   17    25        INIT_METHOD_CALL                                         !0, 'createElement'
         26        SEND_VAL_EX                                              'recipient'
         27        DO_FCALL                                      0  $29     
         28        ASSIGN                                                   !8, $29
   18    29        INIT_METHOD_CALL                                         !7, 'appendChild'
         30        SEND_VAR_EX                                              !8
         31        DO_FCALL                                      0  $31     
         32        ASSIGN                                                   !9, $31
   19    33        INIT_METHOD_CALL                                         !0, 'createTextNode'
         34        INIT_FCALL                                               'md5'
         35        INIT_FCALL                                               'strtolower'
         36        FETCH_OBJ_R                                      ~33     !4, 'contacts_emailaddress'
         37        SEND_VAL                                                 ~33
         38        DO_ICALL                                         $34     
         39        SEND_VAR                                                 $34
         40        DO_ICALL                                         $35     
         41        SEND_VAR_NO_REF_EX                                       $35
         42        DO_FCALL                                      0  $36     
         43        ASSIGN                                                   !10, $36
   20    44        INIT_METHOD_CALL                                         !9, 'appendChild'
         45        SEND_VAR_EX                                              !10
         46        DO_FCALL                                      0          
   22    47        INIT_METHOD_CALL                                         !0, 'createElement'
         48        SEND_VAL_EX                                              'list'
         49        DO_FCALL                                      0  $39     
         50        ASSIGN                                                   !8, $39
   23    51        INIT_METHOD_CALL                                         !7, 'appendChild'
         52        SEND_VAR_EX                                              !8
         53        DO_FCALL                                      0  $41     
         54        ASSIGN                                                   !11, $41
   24    55        INIT_METHOD_CALL                                         !0, 'createTextNode'
         56        CHECK_FUNC_ARG                                           
         57        FETCH_THIS                                       $43     
         58        FETCH_OBJ_FUNC_ARG                               $44     $43, 'list_id'
         59        SEND_FUNC_ARG                                            $44
         60        DO_FCALL                                      0  $45     
         61        ASSIGN                                                   !10, $45
   25    62        INIT_METHOD_CALL                                         !11, 'appendChild'
         63        SEND_VAR_EX                                              !10
         64        DO_FCALL                                      0          
   27    65        INIT_METHOD_CALL                                         !0, 'createElement'
         66        SEND_VAL_EX                                              'domain'
         67        DO_FCALL                                      0  $48     
         68        ASSIGN                                                   !8, $48
   28    69        INIT_METHOD_CALL                                         !7, 'appendChild'
         70        SEND_VAR_EX                                              !8
         71        DO_FCALL                                      0  $50     
         72        ASSIGN                                                   !12, $50
   29    73        INIT_METHOD_CALL                                         !0, 'createTextNode'
         74        CHECK_FUNC_ARG                                           
         75        FETCH_OBJ_FUNC_ARG                               $52     !4, 'contacts_domainname'
         76        SEND_FUNC_ARG                                            $52
         77        DO_FCALL                                      0  $53     
         78        ASSIGN                                                   !10, $53
   30    79        INIT_METHOD_CALL                                         !12, 'appendChild'
         80        SEND_VAR_EX                                              !10
         81        DO_FCALL                                      0          
   13    82      > JMP                                                      ->15
         83    >   FE_FREE                                                  $22
   33    84        ASSIGN_OBJ                                               !0, 'formatOutput'
         85        OP_DATA                                                  <true>
   35    86        INIT_METHOD_CALL                                         !0, 'saveXML'
         87        DO_FCALL                                      0  $57     
         88        ECHO                                                     $57
   37    89      > RETURN                                                   !0
         90*     > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
157.27 ms | 1404 KiB | 17 Q