3v4l.org

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

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
152.99 ms | 1400 KiB | 15 Q