3v4l.org

run code in 300+ PHP versions simultaneously
<?php $collection_musiques = array(); $musique = new DOMDocument(); $rang = 0; if(!$musique->load("https://itunes.apple.com/fr/rss/topsongs/limit=200/genre=15/explicit=true/xml")) return false; $M_list = $musique->getElementsByTagName("entry"); foreach ($M_list as $M){ $rang ++; $objet = new musique(); $objet->titre = array( "num" => $M->getElementsByTagName("id")->item(0)->getAttribute("im:id"), "nom" => $this->nettoieChaine($M->getElementsByTagName("name")->item(0)->nodeValue) ); $objet->auteur = array( "num" => $this->cutIdItunesArtist($M->getElementsByTagName("artist")->item(0)->getAttribute("href")), "nom" => $this->nettoieChaine($M->getElementsByTagName("artist")->item(0)->nodeValue) ); $objet->droit = $this->nettoieChaine($M->getElementsByTagName("rights")->item(0), true); $objet->lien = $M->getElementsByTagName("link")->item(0)->getAttribute("href"); $objet->cover = $M->getElementsByTagName("image")->item(2)->nodeValue; if($M->getElementsByTagName("category")->item(0) != null) $objet->style = $M->getElementsByTagName("category")->item(0)->getAttribute("term"); else $objet->style = ""; $objet->rang = $rang; if($M->getElementsByTagName("link")->item(1) != null) { $objet->extrait = $M->getElementsByTagName("link")->item(1)->getAttribute("href"); } $collection_musiques[$rang-1] = $objet; }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 10, Position 2 = 11
Branch analysis from position: 10
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 11
2 jumps found. (Code = 77) Position 1 = 16, Position 2 = 157
Branch analysis from position: 16
2 jumps found. (Code = 78) Position 1 = 17, Position 2 = 157
Branch analysis from position: 17
2 jumps found. (Code = 43) Position 1 = 118, Position 2 = 130
Branch analysis from position: 118
1 jumps found. (Code = 42) Position 1 = 132
Branch analysis from position: 132
2 jumps found. (Code = 43) Position 1 = 142, Position 2 = 153
Branch analysis from position: 142
1 jumps found. (Code = 42) Position 1 = 16
Branch analysis from position: 16
Branch analysis from position: 153
Branch analysis from position: 130
2 jumps found. (Code = 43) Position 1 = 142, Position 2 = 153
Branch analysis from position: 142
Branch analysis from position: 153
Branch analysis from position: 157
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 157
filename:       /in/FS3CX
function name:  (null)
number of ops:  159
compiled vars:  !0 = $collection_musiques, !1 = $musique, !2 = $rang, !3 = $M_list, !4 = $M, !5 = $objet
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, <array>
    3     1        NEW                                              $7      'DOMDocument'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !1, $7
    4     4        ASSIGN                                                   !2, 0
    6     5        INIT_METHOD_CALL                                         !1, 'load'
          6        SEND_VAL_EX                                              'https%3A%2F%2Fitunes.apple.com%2Ffr%2Frss%2Ftopsongs%2Flimit%3D200%2Fgenre%3D15%2Fexplicit%3Dtrue%2Fxml'
          7        DO_FCALL                                      0  $11     
          8        BOOL_NOT                                         ~12     $11
          9      > JMPZ                                                     ~12, ->11
    7    10    > > RETURN                                                   <false>
    9    11    >   INIT_METHOD_CALL                                         !1, 'getElementsByTagName'
         12        SEND_VAL_EX                                              'entry'
         13        DO_FCALL                                      0  $13     
         14        ASSIGN                                                   !3, $13
   11    15      > FE_RESET_R                                       $15     !3, ->157
         16    > > FE_FETCH_R                                               $15, !4, ->157
   12    17    >   PRE_INC                                                  !2
   14    18        NEW                                              $17     'musique'
         19        DO_FCALL                                      0          
         20        ASSIGN                                                   !5, $17
   17    21        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
         22        SEND_VAL_EX                                              'id'
         23        DO_FCALL                                      0  $21     
         24        INIT_METHOD_CALL                                         $21, 'item'
         25        SEND_VAL_EX                                              0
         26        DO_FCALL                                      0  $22     
         27        INIT_METHOD_CALL                                         $22, 'getAttribute'
         28        SEND_VAL_EX                                              'im%3Aid'
         29        DO_FCALL                                      0  $23     
         30        INIT_ARRAY                                       ~24     $23, 'num'
   18    31        FETCH_THIS                                       $25     
         32        INIT_METHOD_CALL                                         $25, 'nettoieChaine'
         33        CHECK_FUNC_ARG                                           
         34        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
         35        SEND_VAL_EX                                              'name'
         36        DO_FCALL                                      0  $26     
         37        INIT_METHOD_CALL                                         $26, 'item'
         38        SEND_VAL_EX                                              0
         39        DO_FCALL                                      0  $27     
         40        SEPARATE                                         $27     $27
         41        FETCH_OBJ_FUNC_ARG                               $28     $27, 'nodeValue'
         42        SEND_FUNC_ARG                                            $28
         43        DO_FCALL                                      0  $29     
         44        ADD_ARRAY_ELEMENT                                ~24     $29, 'nom'
   16    45        ASSIGN_OBJ                                               !5, 'titre'
   18    46        OP_DATA                                                  ~24
   21    47        FETCH_THIS                                       $31     
         48        INIT_METHOD_CALL                                         $31, 'cutIdItunesArtist'
         49        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
         50        SEND_VAL_EX                                              'artist'
         51        DO_FCALL                                      0  $32     
         52        INIT_METHOD_CALL                                         $32, 'item'
         53        SEND_VAL_EX                                              0
         54        DO_FCALL                                      0  $33     
         55        INIT_METHOD_CALL                                         $33, 'getAttribute'
         56        SEND_VAL_EX                                              'href'
         57        DO_FCALL                                      0  $34     
         58        SEND_VAR_NO_REF_EX                                       $34
         59        DO_FCALL                                      0  $35     
         60        INIT_ARRAY                                       ~36     $35, 'num'
   22    61        FETCH_THIS                                       $37     
         62        INIT_METHOD_CALL                                         $37, 'nettoieChaine'
         63        CHECK_FUNC_ARG                                           
         64        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
         65        SEND_VAL_EX                                              'artist'
         66        DO_FCALL                                      0  $38     
         67        INIT_METHOD_CALL                                         $38, 'item'
         68        SEND_VAL_EX                                              0
         69        DO_FCALL                                      0  $39     
         70        SEPARATE                                         $39     $39
         71        FETCH_OBJ_FUNC_ARG                               $40     $39, 'nodeValue'
         72        SEND_FUNC_ARG                                            $40
         73        DO_FCALL                                      0  $41     
         74        ADD_ARRAY_ELEMENT                                ~36     $41, 'nom'
   20    75        ASSIGN_OBJ                                               !5, 'auteur'
   22    76        OP_DATA                                                  ~36
   25    77        FETCH_THIS                                       $43     
         78        INIT_METHOD_CALL                                         $43, 'nettoieChaine'
         79        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
         80        SEND_VAL_EX                                              'rights'
         81        DO_FCALL                                      0  $44     
         82        INIT_METHOD_CALL                                         $44, 'item'
         83        SEND_VAL_EX                                              0
         84        DO_FCALL                                      0  $45     
         85        SEND_VAR_NO_REF_EX                                       $45
         86        SEND_VAL_EX                                              <true>
         87        DO_FCALL                                      0  $46     
         88        ASSIGN_OBJ                                               !5, 'droit'
         89        OP_DATA                                                  $46
   27    90        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
         91        SEND_VAL_EX                                              'link'
         92        DO_FCALL                                      0  $48     
         93        INIT_METHOD_CALL                                         $48, 'item'
         94        SEND_VAL_EX                                              0
         95        DO_FCALL                                      0  $49     
         96        INIT_METHOD_CALL                                         $49, 'getAttribute'
         97        SEND_VAL_EX                                              'href'
         98        DO_FCALL                                      0  $50     
         99        ASSIGN_OBJ                                               !5, 'lien'
        100        OP_DATA                                                  $50
   29   101        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
        102        SEND_VAL_EX                                              'image'
        103        DO_FCALL                                      0  $52     
        104        INIT_METHOD_CALL                                         $52, 'item'
        105        SEND_VAL_EX                                              2
        106        DO_FCALL                                      0  $53     
        107        FETCH_OBJ_R                                      ~54     $53, 'nodeValue'
        108        ASSIGN_OBJ                                               !5, 'cover'
        109        OP_DATA                                                  ~54
   31   110        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
        111        SEND_VAL_EX                                              'category'
        112        DO_FCALL                                      0  $55     
        113        INIT_METHOD_CALL                                         $55, 'item'
        114        SEND_VAL_EX                                              0
        115        DO_FCALL                                      0  $56     
        116        IS_NOT_EQUAL                                             $56, null
        117      > JMPZ                                                     ~57, ->130
   32   118    >   INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
        119        SEND_VAL_EX                                              'category'
        120        DO_FCALL                                      0  $59     
        121        INIT_METHOD_CALL                                         $59, 'item'
        122        SEND_VAL_EX                                              0
        123        DO_FCALL                                      0  $60     
        124        INIT_METHOD_CALL                                         $60, 'getAttribute'
        125        SEND_VAL_EX                                              'term'
        126        DO_FCALL                                      0  $61     
        127        ASSIGN_OBJ                                               !5, 'style'
        128        OP_DATA                                                  $61
        129      > JMP                                                      ->132
   34   130    >   ASSIGN_OBJ                                               !5, 'style'
        131        OP_DATA                                                  ''
   36   132    >   ASSIGN_OBJ                                               !5, 'rang'
        133        OP_DATA                                                  !2
   37   134        INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
        135        SEND_VAL_EX                                              'link'
        136        DO_FCALL                                      0  $64     
        137        INIT_METHOD_CALL                                         $64, 'item'
        138        SEND_VAL_EX                                              1
        139        DO_FCALL                                      0  $65     
        140        IS_NOT_EQUAL                                             $65, null
        141      > JMPZ                                                     ~66, ->153
   38   142    >   INIT_METHOD_CALL                                         !4, 'getElementsByTagName'
        143        SEND_VAL_EX                                              'link'
        144        DO_FCALL                                      0  $68     
        145        INIT_METHOD_CALL                                         $68, 'item'
        146        SEND_VAL_EX                                              1
        147        DO_FCALL                                      0  $69     
        148        INIT_METHOD_CALL                                         $69, 'getAttribute'
        149        SEND_VAL_EX                                              'href'
        150        DO_FCALL                                      0  $70     
        151        ASSIGN_OBJ                                               !5, 'extrait'
        152        OP_DATA                                                  $70
   41   153    >   SUB                                              ~71     !2, 1
        154        ASSIGN_DIM                                               !0, ~71
        155        OP_DATA                                                  !5
   11   156      > JMP                                                      ->16
        157    >   FE_FREE                                                  $15
   42   158      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
209.56 ms | 1407 KiB | 13 Q