3v4l.org

run code in 300+ PHP versions simultaneously
<?php $xmlstr = <<<XML <xml> <medium val="cpa"> <source val="affilinet"> <campaign val=""> <lever3 val="affiliation" /> <lever2 val="affiliation" /> <lever1 val="trafic_payant" /> </campaign> </source> </medium> <medium val="organic"> <source val=""> <campaign val=""> <lever3 val="seo" /> <lever2 val="seo" /> <lever1 val="trafic_gratuit" /> </campaign> </source> </medium> <medium val="display"> <source val=""> <campaign val=""> <lever3 val="display" /> <lever2 val="display" /> <lever1 val="trafic_payant" /> </campaign> </source> </medium> </xml> XML; $xml = simplexml_load_string($xmlstr); $x = $xml->xpath("//campaign/*"); //print_r($x); echo count($x); $nb_lever = count($x) / 3; for ($i = 0; $i <= $nb_lever; $i += 3) { echo "array(\"" . $x[$i][0]->attributes() . "\", \"" . $x[$i+1][0]->attributes() . "\", \"" . $x[$i+2][0]->attributes() . "\")," . "\n"; } //$levers = array(array("comparateur-google_shopping", "comparateur", "trafic_payant"), // array("display", "display", "trafic_payant"), // array("email-auchanfr", "email_auchanfr", "email_auchanfr") // ); //$begin = 41; //$end = 50; //for ($i = $begin; $i <= $end; ++$i){ // $index = rand(0,2); // $query = "UPDATE IGNORE piwik_log_visit SET lever3='" . $levers[$index][0] . "', lever2='" . $levers[$index][1] . "', lever1='" . //$levers[$index][2] . "' WHERE idvisit=" . $i . ";"; // echo $query . "\n"; //} //print_r($levers[rand(0,2)]);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 39
Branch analysis from position: 39
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 16
Branch analysis from position: 41
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 16
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 16
Branch analysis from position: 41
Branch analysis from position: 16
filename:       /in/FNIGO
function name:  (null)
number of ops:  42
compiled vars:  !0 = $xmlstr, !1 = $xml, !2 = $x, !3 = $nb_lever, !4 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '%3Cxml%3E%0A%3Cmedium+val%3D%22cpa%22%3E%0A++++++%3Csource+val%3D%22affilinet%22%3E%0A+++++++++++%3Ccampaign+val%3D%22%22%3E%0A++++++++++++++++%3Clever3+val%3D%22affiliation%22+%2F%3E%0A++++++++++++++++%3Clever2+val%3D%22affiliation%22+%2F%3E%0A++++++++++++++++%3Clever1+val%3D%22trafic_payant%22+%2F%3E%0A++++++++++++%3C%2Fcampaign%3E%0A++++++++%3C%2Fsource%3E%0A%3C%2Fmedium%3E%0A%3Cmedium+val%3D%22organic%22%3E%0A++++++++%3Csource+val%3D%22%22%3E%0A++++++++++++%3Ccampaign+val%3D%22%22%3E%0A++++++++++++++++%3Clever3+val%3D%22seo%22+%2F%3E%0A++++++++++++++++%3Clever2+val%3D%22seo%22+%2F%3E%0A++++++++++++++++%3Clever1+val%3D%22trafic_gratuit%22+%2F%3E%0A++++++++++++%3C%2Fcampaign%3E%0A++++++++%3C%2Fsource%3E%0A%3C%2Fmedium%3E%0A%3Cmedium+val%3D%22display%22%3E%0A++++++++%3Csource+val%3D%22%22%3E%0A++++++++++++%3Ccampaign+val%3D%22%22%3E%0A++++++++++++++++%3Clever3+val%3D%22display%22+%2F%3E%0A++++++++++++++++%3Clever2+val%3D%22display%22+%2F%3E%0A++++++++++++++++%3Clever1+val%3D%22trafic_payant%22+%2F%3E%0A++++++++++++%3C%2Fcampaign%3E%0A++++++++%3C%2Fsource%3E%0A%3C%2Fmedium%3E%0A%3C%2Fxml%3E'
   35     1        INIT_FCALL                                               'simplexml_load_string'
          2        SEND_VAR                                                 !0
          3        DO_ICALL                                         $6      
          4        ASSIGN                                                   !1, $6
   37     5        INIT_METHOD_CALL                                         !1, 'xpath'
          6        SEND_VAL_EX                                              '%2F%2Fcampaign%2F%2A'
          7        DO_FCALL                                      0  $8      
          8        ASSIGN                                                   !2, $8
   41     9        COUNT                                            ~10     !2
         10        ECHO                                                     ~10
   43    11        COUNT                                            ~11     !2
         12        DIV                                              ~12     ~11, 3
         13        ASSIGN                                                   !3, ~12
   45    14        ASSIGN                                                   !4, 0
         15      > JMP                                                      ->39
   46    16    >   FETCH_DIM_R                                      ~15     !2, !4
         17        FETCH_DIM_R                                      ~16     ~15, 0
         18        INIT_METHOD_CALL                                         ~16, 'attributes'
         19        DO_FCALL                                      0  $17     
         20        CONCAT                                           ~18     'array%28%22', $17
         21        CONCAT                                           ~19     ~18, '%22%2C+%22'
         22        ADD                                              ~20     !4, 1
         23        FETCH_DIM_R                                      ~21     !2, ~20
         24        FETCH_DIM_R                                      ~22     ~21, 0
         25        INIT_METHOD_CALL                                         ~22, 'attributes'
         26        DO_FCALL                                      0  $23     
         27        CONCAT                                           ~24     ~19, $23
         28        CONCAT                                           ~25     ~24, '%22%2C+%22'
         29        ADD                                              ~26     !4, 2
         30        FETCH_DIM_R                                      ~27     !2, ~26
         31        FETCH_DIM_R                                      ~28     ~27, 0
         32        INIT_METHOD_CALL                                         ~28, 'attributes'
         33        DO_FCALL                                      0  $29     
         34        CONCAT                                           ~30     ~25, $29
         35        CONCAT                                           ~31     ~30, '%22%29%2C'
         36        CONCAT                                           ~32     ~31, '%0A'
         37        ECHO                                                     ~32
   45    38        ASSIGN_OP                                     1          !4, 3
         39    >   IS_SMALLER_OR_EQUAL                                      !4, !3
         40      > JMPNZ                                                    ~34, ->16
   63    41    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
158.16 ms | 1400 KiB | 15 Q