3v4l.org

run code in 300+ PHP versions simultaneously
<?php $d = array( array( "id", "int(10) unsigned", "NO", "PRI", "auto_increment" ), array( "title", "varchar(32)", "NO" ), array( "author", "varchar(32)", "NO" ), array( "category", "tinyint(3) unsigned", "NO" ), array( "date", "datetime", "NO" ), array( "post_ip", "int(10) unsigned", "NO" ), array( "approved_by", "varchar(32)", "NO" ), array( "text", "text", "NO" ) ); $cols = array(); foreach ($d as $row) { foreach($row as $id => $col) { (!isset($cols[$id]) && $cols[$id] = 0); ($cols[$id] < strlen($col) && $cols[$id] = strlen($col)); } } foreach ($d as $row) foreach ($row as $colid => &$col) $col = str_pad($col, $cols[$colid]); print_r($d); /* id # int(10) unsigned # NO # PRI # auto_increment # [19:44] <teehee> title # varchar(32) # NO # [19:44] <teehee> author # varchar(32) # NO # [19:44] <teehee> category # tinyint(3) unsigned # NO # [19:44] <teehee> date # datetime # NO # [19:44] <teehee> post_ip # int(10) unsigned # NO # [19:44] <teehee> approved_by # varchar(32) # YES # [19:44] <teehee> text # text # NO # */
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 3, Position 2 = 24
Branch analysis from position: 3
2 jumps found. (Code = 78) Position 1 = 4, Position 2 = 24
Branch analysis from position: 4
2 jumps found. (Code = 77) Position 1 = 5, Position 2 = 22
Branch analysis from position: 5
2 jumps found. (Code = 78) Position 1 = 6, Position 2 = 22
Branch analysis from position: 6
2 jumps found. (Code = 46) Position 1 = 10, Position 2 = 13
Branch analysis from position: 10
2 jumps found. (Code = 46) Position 1 = 17, Position 2 = 21
Branch analysis from position: 17
1 jumps found. (Code = 42) Position 1 = 5
Branch analysis from position: 5
Branch analysis from position: 21
Branch analysis from position: 13
Branch analysis from position: 22
1 jumps found. (Code = 42) Position 1 = 3
Branch analysis from position: 3
Branch analysis from position: 22
Branch analysis from position: 24
2 jumps found. (Code = 77) Position 1 = 26, Position 2 = 39
Branch analysis from position: 26
2 jumps found. (Code = 78) Position 1 = 27, Position 2 = 39
Branch analysis from position: 27
2 jumps found. (Code = 125) Position 1 = 28, Position 2 = 37
Branch analysis from position: 28
2 jumps found. (Code = 126) Position 1 = 29, Position 2 = 37
Branch analysis from position: 29
1 jumps found. (Code = 42) Position 1 = 28
Branch analysis from position: 28
Branch analysis from position: 37
1 jumps found. (Code = 42) Position 1 = 26
Branch analysis from position: 26
Branch analysis from position: 37
Branch analysis from position: 39
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 39
Branch analysis from position: 24
filename:       /in/MRIcM
function name:  (null)
number of ops:  44
compiled vars:  !0 = $d, !1 = $cols, !2 = $row, !3 = $col, !4 = $id, !5 = $colid
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, <array>
   22     1        ASSIGN                                                   !1, <array>
   23     2      > FE_RESET_R                                       $8      !0, ->24
          3    > > FE_FETCH_R                                               $8, !2, ->24
   24     4    > > FE_RESET_R                                       $9      !2, ->22
          5    > > FE_FETCH_R                                       ~10     $9, !3, ->22
          6    >   ASSIGN                                                   !4, ~10
   25     7        ISSET_ISEMPTY_DIM_OBJ                         0  ~12     !1, !4
          8        BOOL_NOT                                         ~13     ~12
          9      > JMPZ_EX                                          ~13     ~13, ->13
         10    >   ASSIGN_DIM                                       ~14     !1, !4
         11        OP_DATA                                                  0
         12        BOOL                                             ~13     ~14
   26    13    >   FETCH_DIM_R                                      ~15     !1, !4
         14        STRLEN                                           ~16     !3
         15        IS_SMALLER                                       ~17     ~15, ~16
         16      > JMPZ_EX                                          ~17     ~17, ->21
         17    >   STRLEN                                           ~19     !3
         18        ASSIGN_DIM                                       ~18     !1, !4
         19        OP_DATA                                                  ~19
         20        BOOL                                             ~17     ~18
   24    21    > > JMP                                                      ->5
         22    >   FE_FREE                                                  $9
   23    23      > JMP                                                      ->3
         24    >   FE_FREE                                                  $8
   29    25      > FE_RESET_R                                       $20     !0, ->39
         26    > > FE_FETCH_R                                               $20, !2, ->39
   30    27    > > FE_RESET_RW                                      $21     !2, ->37
         28    > > FE_FETCH_RW                                      ~22     $21, !3, ->37
         29    >   ASSIGN                                                   !5, ~22
   31    30        INIT_FCALL                                               'str_pad'
         31        SEND_VAR                                                 !3
         32        FETCH_DIM_R                                      ~24     !1, !5
         33        SEND_VAL                                                 ~24
         34        DO_ICALL                                         $25     
         35        ASSIGN                                                   !3, $25
   30    36      > JMP                                                      ->28
         37    >   FE_FREE                                                  $21
   29    38      > JMP                                                      ->26
         39    >   FE_FREE                                                  $20
   32    40        INIT_FCALL                                               'print_r'
         41        SEND_VAR                                                 !0
         42        DO_ICALL                                                 
   46    43      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
154.73 ms | 1400 KiB | 17 Q