3v4l.org

run code in 500+ PHP versions simultaneously
<?php // TL;DR : $output = (intval($x,2) & 1); $a = '123'; $b = '42'; $c= '033'; $d ='0x007'; $e = '010'; $f = '0'; $g= '1'; $h = ''; $i = ' '; $j = "\0"; $k = PHP_INT_MAX; $l = PHP_INT_MIN; $m = PHP_FLOAT_MAX; $n = PHP_FLOAT_MIN; echo implode(PHP_EOL, array_map(fn($item) => 'input : ' . $item . str_repeat('.', strlen($m) - ($item === "\0" ? 0 : strlen($item))) . ' output: ' . (intval($item,2) & 1), [$a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l,$m,$n]));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/K8bUc
function name:  (null)
number of ops:  37
compiled vars:  !0 = $a, !1 = $b, !2 = $c, !3 = $d, !4 = $e, !5 = $f, !6 = $g, !7 = $h, !8 = $i, !9 = $j, !10 = $k, !11 = $l, !12 = $m, !13 = $n
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    6     0  E >   ASSIGN                                                       !0, '123'
    7     1        ASSIGN                                                       !1, '42'
    8     2        ASSIGN                                                       !2, '033'
    9     3        ASSIGN                                                       !3, '0x007'
   10     4        ASSIGN                                                       !4, '010'
   11     5        ASSIGN                                                       !5, '0'
   12     6        ASSIGN                                                       !6, '1'
   13     7        ASSIGN                                                       !7, ''
   14     8        ASSIGN                                                       !8, '+'
   15     9        ASSIGN                                                       !9, '%00'
   16    10        ASSIGN                                                       !10, 9223372036854775807
   17    11        ASSIGN                                                       !11, -9223372036854775808
   18    12        ASSIGN                                                       !12, 1.79769e+308
   19    13        ASSIGN                                                       !13, 2.22507e-308
   22    14        INIT_FCALL                                                   'array_map'
         15        DECLARE_LAMBDA_FUNCTION                              ~28     [0]
         16        BIND_LEXICAL                                                 ~28, !12
         17        SEND_VAL                                                     ~28
         18        INIT_ARRAY                                           ~29     !0
         19        ADD_ARRAY_ELEMENT                                    ~29     !1
         20        ADD_ARRAY_ELEMENT                                    ~29     !2
         21        ADD_ARRAY_ELEMENT                                    ~29     !3
         22        ADD_ARRAY_ELEMENT                                    ~29     !4
         23        ADD_ARRAY_ELEMENT                                    ~29     !5
         24        ADD_ARRAY_ELEMENT                                    ~29     !6
         25        ADD_ARRAY_ELEMENT                                    ~29     !7
         26        ADD_ARRAY_ELEMENT                                    ~29     !8
         27        ADD_ARRAY_ELEMENT                                    ~29     !9
         28        ADD_ARRAY_ELEMENT                                    ~29     !10
         29        ADD_ARRAY_ELEMENT                                    ~29     !11
         30        ADD_ARRAY_ELEMENT                                    ~29     !12
         31        ADD_ARRAY_ELEMENT                                    ~29     !13
         32        SEND_VAL                                                     ~29
         33        DO_ICALL                                             $30     
         34        FRAMELESS_ICALL_2                implode             ~31     '%0A', $30
         35        ECHO                                                         ~31
         36      > RETURN                                                       1


Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 8, Position 2 = 10
Branch analysis from position: 8
1 jumps found. (Code = 42) Position 1 = 12
Branch analysis from position: 12
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 10
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/K8bUc
function name:  {closure:/in/K8bUc:22}
number of ops:  25
compiled vars:  !0 = $item, !1 = $m
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
          0  E >   RECV                                                 !0      
          1        BIND_STATIC                                                  !1
          2        CONCAT                                               ~2      'input+%3A+', !0
          3        INIT_FCALL                                                   'str_repeat'
          4        SEND_VAL                                                     '.'
          5        STRLEN                                               ~3      !1
          6        IS_IDENTICAL                                                 !0, '%00'
          7      > JMPZ                                                         ~4, ->10
          8    >   QM_ASSIGN                                            ~5      0
          9      > JMP                                                          ->12
         10    >   STRLEN                                               ~6      !0
         11        QM_ASSIGN                                            ~5      ~6
         12    >   SUB                                                  ~7      ~3, ~5
         13        SEND_VAL                                                     ~7
         14        DO_ICALL                                             $8      
         15        CONCAT                                               ~9      ~2, $8
         16        CONCAT                                               ~10     ~9, '+output%3A+'
         17        INIT_FCALL                                                   'intval'
         18        SEND_VAR                                                     !0
         19        SEND_VAL                                                     2
         20        DO_ICALL                                             $11     
         21        BW_AND                                               ~12     $11, 1
         22        CONCAT                                               ~13     ~10, ~12
         23      > RETURN                                                       ~13
         24*     > RETURN                                                       null

End of Dynamic Function 0

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
164.86 ms | 1394 KiB | 16 Q