3v4l.org

run code in 300+ PHP versions simultaneously
<?php $str=<<<XML <data> <versions> <version> <n>0.1.0</n> <changes>First Public Release</changes> <note>This is a Beta</note> </version> </versions> <servers> </servers> </data> XML; $serverIP = "192.168.0.1"; $serverPort = 81; $xml=simplexml_load_string($str); $main_server = $xml->servers->xpath('//server[@ip="' . $serverIP . '"][@port="' . $serverPort . '"]'); echo "tot:" . count($main_server); if(count($main_server) == 0){ echo "cacca"; $server = $xml->servers->addChild('server'); $server->addAttribute('ip', $serverIP); $server->addAttribute('port', $serverPort); $server->addAttribute('pluginVersion', $serverPluginVersion); $server->addAttribute('arenaCount', $serverArena); }else{ } var_dump ($main_server);
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 22, Position 2 = 45
Branch analysis from position: 22
1 jumps found. (Code = 42) Position 1 = 45
Branch analysis from position: 45
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 45
filename:       /in/AQ5Ut
function name:  (null)
number of ops:  49
compiled vars:  !0 = $str, !1 = $serverIP, !2 = $serverPort, !3 = $xml, !4 = $main_server, !5 = $server, !6 = $serverPluginVersion, !7 = $serverArena
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '%3Cdata%3E%0A++++%3Cversions%3E%0A++++++++%3Cversion%3E%0A%09%09%09%3Cn%3E0.1.0%3C%2Fn%3E%0A%09%09%09%3Cchanges%3EFirst+Public+Release%3C%2Fchanges%3E%0A%09%09%09%3Cnote%3EThis+is+a+Beta%3C%2Fnote%3E%0A%09%09%3C%2Fversion%3E%0A++++%3C%2Fversions%3E%0A++++%3Cservers%3E%0A++++%3C%2Fservers%3E%0A%3C%2Fdata%3E'
   16     1        ASSIGN                                                   !1, '192.168.0.1'
   17     2        ASSIGN                                                   !2, 81
   20     3        INIT_FCALL                                               'simplexml_load_string'
          4        SEND_VAR                                                 !0
          5        DO_ICALL                                         $11     
          6        ASSIGN                                                   !3, $11
   21     7        FETCH_OBJ_R                                      ~13     !3, 'servers'
          8        INIT_METHOD_CALL                                         ~13, 'xpath'
          9        CONCAT                                           ~14     '%2F%2Fserver%5B%40ip%3D%22', !1
         10        CONCAT                                           ~15     ~14, '%22%5D%5B%40port%3D%22'
         11        CONCAT                                           ~16     ~15, !2
         12        CONCAT                                           ~17     ~16, '%22%5D'
         13        SEND_VAL_EX                                              ~17
         14        DO_FCALL                                      0  $18     
         15        ASSIGN                                                   !4, $18
   23    16        COUNT                                            ~20     !4
         17        CONCAT                                           ~21     'tot%3A', ~20
         18        ECHO                                                     ~21
   25    19        COUNT                                            ~22     !4
         20        IS_EQUAL                                                 ~22, 0
         21      > JMPZ                                                     ~23, ->45
   26    22    >   ECHO                                                     'cacca'
   28    23        FETCH_OBJ_R                                      ~24     !3, 'servers'
         24        INIT_METHOD_CALL                                         ~24, 'addChild'
         25        SEND_VAL_EX                                              'server'
         26        DO_FCALL                                      0  $25     
         27        ASSIGN                                                   !5, $25
   29    28        INIT_METHOD_CALL                                         !5, 'addAttribute'
         29        SEND_VAL_EX                                              'ip'
         30        SEND_VAR_EX                                              !1
         31        DO_FCALL                                      0          
   30    32        INIT_METHOD_CALL                                         !5, 'addAttribute'
         33        SEND_VAL_EX                                              'port'
         34        SEND_VAR_EX                                              !2
         35        DO_FCALL                                      0          
   31    36        INIT_METHOD_CALL                                         !5, 'addAttribute'
         37        SEND_VAL_EX                                              'pluginVersion'
         38        SEND_VAR_EX                                              !6
         39        DO_FCALL                                      0          
   32    40        INIT_METHOD_CALL                                         !5, 'addAttribute'
         41        SEND_VAL_EX                                              'arenaCount'
         42        SEND_VAR_EX                                              !7
         43        DO_FCALL                                      0          
         44      > JMP                                                      ->45
   36    45    >   INIT_FCALL                                               'var_dump'
         46        SEND_VAR                                                 !4
         47        DO_ICALL                                                 
         48      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
153.26 ms | 1400 KiB | 17 Q