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); var_dump ($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); } $main_server = $xml->servers->xpath('//server[@ip="' . $serverIP . '"][@port="' . $serverPort . '"]'); var_dump ($main_server);
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 25, Position 2 = 39
Branch analysis from position: 25
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 39
filename:       /in/3cp3R
function name:  (null)
number of ops:  52
compiled vars:  !0 = $str, !1 = $serverIP, !2 = $serverPort, !3 = $xml, !4 = $main_server, !5 = $server
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                                         $9      
          6        ASSIGN                                                   !3, $9
   21     7        FETCH_OBJ_R                                      ~11     !3, 'servers'
          8        INIT_METHOD_CALL                                         ~11, 'xpath'
          9        CONCAT                                           ~12     '%2F%2Fserver%5B%40ip%3D%22', !1
         10        CONCAT                                           ~13     ~12, '%22%5D%5B%40port%3D%22'
         11        CONCAT                                           ~14     ~13, !2
         12        CONCAT                                           ~15     ~14, '%22%5D'
         13        SEND_VAL_EX                                              ~15
         14        DO_FCALL                                      0  $16     
         15        ASSIGN                                                   !4, $16
   23    16        COUNT                                            ~18     !4
         17        CONCAT                                           ~19     'tot%3A', ~18
         18        ECHO                                                     ~19
   24    19        INIT_FCALL                                               'var_dump'
         20        SEND_VAR                                                 !4
         21        DO_ICALL                                                 
   26    22        COUNT                                            ~21     !4
         23        IS_EQUAL                                                 ~21, 0
         24      > JMPZ                                                     ~22, ->39
   27    25    >   ECHO                                                     'cacca'
   29    26        FETCH_OBJ_R                                      ~23     !3, 'servers'
         27        INIT_METHOD_CALL                                         ~23, 'addChild'
         28        SEND_VAL_EX                                              'server'
         29        DO_FCALL                                      0  $24     
         30        ASSIGN                                                   !5, $24
   30    31        INIT_METHOD_CALL                                         !5, 'addAttribute'
         32        SEND_VAL_EX                                              'ip'
         33        SEND_VAR_EX                                              !1
         34        DO_FCALL                                      0          
   31    35        INIT_METHOD_CALL                                         !5, 'addAttribute'
         36        SEND_VAL_EX                                              'port'
         37        SEND_VAR_EX                                              !2
         38        DO_FCALL                                      0          
   36    39    >   FETCH_OBJ_R                                      ~28     !3, 'servers'
         40        INIT_METHOD_CALL                                         ~28, 'xpath'
         41        CONCAT                                           ~29     '%2F%2Fserver%5B%40ip%3D%22', !1
         42        CONCAT                                           ~30     ~29, '%22%5D%5B%40port%3D%22'
         43        CONCAT                                           ~31     ~30, !2
         44        CONCAT                                           ~32     ~31, '%22%5D'
         45        SEND_VAL_EX                                              ~32
         46        DO_FCALL                                      0  $33     
         47        ASSIGN                                                   !4, $33
   37    48        INIT_FCALL                                               'var_dump'
         49        SEND_VAR                                                 !4
         50        DO_ICALL                                                 
         51      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
180.58 ms | 1400 KiB | 17 Q