3v4l.org

run code in 500+ PHP versions simultaneously
<?php function foo(...$args) { echo $args['a b' ] ?? $args['a$b'] ?? $args['我']; } foo(...['a b' => 'c']); // c foo(...['a$b' => 'd']); // d foo(我: 3); // 3 ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/U88Ip
function name:  (null)
number of ops:  13
compiled vars:  none
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    7     0  E >   INIT_FCALL                                                   'foo'
          1        SEND_UNPACK                                                  <array>
          2        CHECK_UNDEF_ARGS                                             
          3        DO_FCALL                                          1          
    8     4        INIT_FCALL                                                   'foo'
          5        SEND_UNPACK                                                  <array>
          6        CHECK_UNDEF_ARGS                                             
          7        DO_FCALL                                          1          
    9     8        INIT_FCALL                                                   'foo'
          9        SEND_VAL_EX                                                  3, '%E6%88%91'
         10        CHECK_UNDEF_ARGS                                             
         11        DO_FCALL                                          1          
   11    12      > RETURN                                                       1

Function foo:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/U88Ip
function name:  foo
number of ops:  10
compiled vars:  !0 = $args
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   RECV_VARIADIC                                        !0      
    4     1        FETCH_DIM_IS                                         ~1      !0, 'a+b'
          2        COALESCE                                             ~2      ~1
          3        FETCH_DIM_IS                                         ~3      !0, 'a%24b'
          4        COALESCE                                             ~4      ~3
          5        FETCH_DIM_R                                          ~5      !0, '%E6%88%91'
          6        QM_ASSIGN                                            ~4      ~5
          7        QM_ASSIGN                                            ~2      ~4
          8        ECHO                                                         ~2
    5     9      > RETURN                                                       null

End of function foo

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
170.65 ms | 1467 KiB | 16 Q