3v4l.org

run code in 300+ PHP versions simultaneously
<?php $filedemo=array('docUpload'=>array( array('label'=>'Label1','file'=>null), array('label'=>'Label2','file'=>'file2'), array('label'=>'Label3','file'=>null), array('label'=>'Label4','file'=>'file4'), array('label'=>'Label5','file'=>null), array('label'=>'Label6','file'=>null), array('label'=>'Label7','file'=>null), ) ); // print_r(json_encode($filedemo)); $total = count($filedemo['docUpload']); // print_r($total); for($i=0; $i < $total; $i++) { if(isset($filedemo['docUpload'][$i]['file']) && !empty($filedemo['docUpload'][$i]['file'])) { $uploadLabel=$filedemo['docUpload'][$i]['label']; $uploadDoc=$filedemo['docUpload'][$i]['file']; } else{ $uploadLabel=$filedemo['docUpload'][$i]['label']; $uploadDoc=$filedemo['docUpload'][$i]['file']; } $dataupload=array( 'upload_label'=>$uploadLabel, 'upload_name'=>$uploadDoc, ); echo "<pre>"; print_r($dataupload); }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 41
Branch analysis from position: 41
2 jumps found. (Code = 44) Position 1 = 43, Position 2 = 6
Branch analysis from position: 43
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
2 jumps found. (Code = 46) Position 1 = 10, Position 2 = 15
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 16, Position 2 = 25
Branch analysis from position: 16
1 jumps found. (Code = 42) Position 1 = 33
Branch analysis from position: 33
2 jumps found. (Code = 44) Position 1 = 43, Position 2 = 6
Branch analysis from position: 43
Branch analysis from position: 6
Branch analysis from position: 25
2 jumps found. (Code = 44) Position 1 = 43, Position 2 = 6
Branch analysis from position: 43
Branch analysis from position: 6
Branch analysis from position: 15
filename:       /in/dalJP
function name:  (null)
number of ops:  44
compiled vars:  !0 = $filedemo, !1 = $total, !2 = $i, !3 = $uploadLabel, !4 = $uploadDoc, !5 = $dataupload
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, <array>
   13     1        FETCH_DIM_R                                      ~7      !0, 'docUpload'
          2        COUNT                                            ~8      ~7
          3        ASSIGN                                                   !1, ~8
   16     4        ASSIGN                                                   !2, 0
          5      > JMP                                                      ->41
   18     6    >   FETCH_DIM_IS                                     ~11     !0, 'docUpload'
          7        FETCH_DIM_IS                                     ~12     ~11, !2
          8        ISSET_ISEMPTY_DIM_OBJ                         0  ~13     ~12, 'file'
          9      > JMPZ_EX                                          ~13     ~13, ->15
         10    >   FETCH_DIM_IS                                     ~14     !0, 'docUpload'
         11        FETCH_DIM_IS                                     ~15     ~14, !2
         12        ISSET_ISEMPTY_DIM_OBJ                         1  ~16     ~15, 'file'
         13        BOOL_NOT                                         ~17     ~16
         14        BOOL                                             ~13     ~17
         15    > > JMPZ                                                     ~13, ->25
   20    16    >   FETCH_DIM_R                                      ~18     !0, 'docUpload'
         17        FETCH_DIM_R                                      ~19     ~18, !2
         18        FETCH_DIM_R                                      ~20     ~19, 'label'
         19        ASSIGN                                                   !3, ~20
   21    20        FETCH_DIM_R                                      ~22     !0, 'docUpload'
         21        FETCH_DIM_R                                      ~23     ~22, !2
         22        FETCH_DIM_R                                      ~24     ~23, 'file'
         23        ASSIGN                                                   !4, ~24
   18    24      > JMP                                                      ->33
   25    25    >   FETCH_DIM_R                                      ~26     !0, 'docUpload'
         26        FETCH_DIM_R                                      ~27     ~26, !2
         27        FETCH_DIM_R                                      ~28     ~27, 'label'
         28        ASSIGN                                                   !3, ~28
   26    29        FETCH_DIM_R                                      ~30     !0, 'docUpload'
         30        FETCH_DIM_R                                      ~31     ~30, !2
         31        FETCH_DIM_R                                      ~32     ~31, 'file'
         32        ASSIGN                                                   !4, ~32
   30    33    >   INIT_ARRAY                                       ~34     !3, 'upload_label'
   31    34        ADD_ARRAY_ELEMENT                                ~34     !4, 'upload_name'
   29    35        ASSIGN                                                   !5, ~34
   33    36        ECHO                                                     '%3Cpre%3E'
   34    37        INIT_FCALL                                               'print_r'
         38        SEND_VAR                                                 !5
         39        DO_ICALL                                                 
   16    40        PRE_INC                                                  !2
         41    >   IS_SMALLER                                               !2, !1
         42      > JMPNZ                                                    ~38, ->6
   36    43    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
142.65 ms | 1005 KiB | 14 Q