3v4l.org

run code in 300+ PHP versions simultaneously
<?php list($a,$b) = "aa"; var_dump($a,$b); $a[0]="aa"; list($a,$b) = $a[0]; var_dump($a,$b); list($a,$b) = str_split("aa"); var_dump($a,$b); $a = array(); $a[]="a"; $a[] ="a"; list($x,$y) = $a; var_dump($x,$y);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/X93hY
function name:  (null)
number of ops:  48
compiled vars:  !0 = $a, !1 = $b, !2 = $x, !3 = $y
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   FETCH_LIST_R                                     $4      'aa', 0
          1        ASSIGN                                                   !0, $4
          2        FETCH_LIST_R                                     $6      'aa', 1
          3        ASSIGN                                                   !1, $6
    3     4        INIT_FCALL                                               'var_dump'
          5        SEND_VAR                                                 !0
          6        SEND_VAR                                                 !1
          7        DO_ICALL                                                 
    5     8        ASSIGN_DIM                                               !0, 0
          9        OP_DATA                                                  'aa'
    6    10        FETCH_DIM_R                                      ~10     !0, 0
         11        FETCH_LIST_R                                     $11     ~10, 0
         12        ASSIGN                                                   !0, $11
         13        FETCH_LIST_R                                     $13     ~10, 1
         14        ASSIGN                                                   !1, $13
         15        FREE                                                     ~10
    7    16        INIT_FCALL                                               'var_dump'
         17        SEND_VAR                                                 !0
         18        SEND_VAR                                                 !1
         19        DO_ICALL                                                 
    9    20        INIT_FCALL                                               'str_split'
         21        SEND_VAL                                                 'aa'
         22        DO_ICALL                                         $16     
         23        FETCH_LIST_R                                     $17     $16, 0
         24        ASSIGN                                                   !0, $17
         25        FETCH_LIST_R                                     $19     $16, 1
         26        ASSIGN                                                   !1, $19
         27        FREE                                                     $16
   10    28        INIT_FCALL                                               'var_dump'
         29        SEND_VAR                                                 !0
         30        SEND_VAR                                                 !1
         31        DO_ICALL                                                 
   12    32        ASSIGN                                                   !0, <array>
   13    33        ASSIGN_DIM                                               !0
         34        OP_DATA                                                  'a'
   14    35        ASSIGN_DIM                                               !0
         36        OP_DATA                                                  'a'
   15    37        QM_ASSIGN                                        ~25     !0
         38        FETCH_LIST_R                                     $26     ~25, 0
         39        ASSIGN                                                   !2, $26
         40        FETCH_LIST_R                                     $28     ~25, 1
         41        ASSIGN                                                   !3, $28
         42        FREE                                                     ~25
   16    43        INIT_FCALL                                               'var_dump'
         44        SEND_VAR                                                 !2
         45        SEND_VAR                                                 !3
         46        DO_ICALL                                                 
         47      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
171.98 ms | 1400 KiB | 17 Q