3v4l.org

run code in 500+ PHP versions simultaneously
<?php var_export([ // string, then mask 'a:ab' => trim('a', 'ab'), // '' ...cast to 0 'ab:a' => trim('ab', 'a'), // 'b' ...cast to 0 '0:1' => trim('0', '1'), // '0' ...cast to 0 '1:0' => trim('1', '0'), // '1' ...cast to 1 ]); echo "\n---\n"; $params = [ ['one' => 'a', 'two' => 'ab', 'three' => '0', 'four' => '1'], // string ['three' => '1', 'one' => 'ab', 'four' => '0', 'two' => 'a'], // mask 'trim' ]; var_export([ 'udiff' => array_udiff_assoc(...$params), 'uintersect' => array_uintersect_assoc(...$params), ]);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/TIYrV
function name:  (null)
number of ops:  27
compiled vars:  !0 = $params
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                                   'var_export'
    5     1        FRAMELESS_ICALL_2                trim                ~1      'a', 'ab'
          2        INIT_ARRAY                                           ~2      ~1, 'a%3Aab'
    6     3        FRAMELESS_ICALL_2                trim                ~3      'ab', 'a'
          4        ADD_ARRAY_ELEMENT                                    ~2      ~3, 'ab%3Aa'
    7     5        FRAMELESS_ICALL_2                trim                ~4      '0', '1'
          6        ADD_ARRAY_ELEMENT                                    ~2      ~4, '0%3A1'
    8     7        FRAMELESS_ICALL_2                trim                ~5      '1', '0'
          8        ADD_ARRAY_ELEMENT                                    ~2      ~5, '1%3A0'
          9        SEND_VAL                                                     ~2
    3    10        DO_ICALL                                                     
   11    11        ECHO                                                         '%0A---%0A'
   13    12        ASSIGN                                                       !0, <array>
   19    13        INIT_FCALL                                                   'var_export'
   20    14        INIT_FCALL                                                   'array_udiff_assoc'
         15        SEND_UNPACK                                                  !0
         16        CHECK_UNDEF_ARGS                                             
         17        DO_ICALL                                             $8      
         18        INIT_ARRAY                                           ~9      $8, 'udiff'
   21    19        INIT_FCALL                                                   'array_uintersect_assoc'
         20        SEND_UNPACK                                                  !0
         21        CHECK_UNDEF_ARGS                                             
         22        DO_ICALL                                             $10     
         23        ADD_ARRAY_ELEMENT                                    ~9      $10, 'uintersect'
         24        SEND_VAL                                                     ~9
   19    25        DO_ICALL                                                     
   22    26      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
197.31 ms | 1893 KiB | 16 Q