3v4l.org

run code in 300+ PHP versions simultaneously
<?php echo 'within var_dump: '; var_dump((string) '0012e2' == (string) '1e3'); $a = '0012e2'; $b = '1e3'; var_dump($a); var_dump($b); echo '== :'."\n"; echo 'direct : '; $i = ($a == $b); var_dump($i); echo 'direct strings : '; $i = ((string) $a == (string) $b); var_dump($i); echo 'string in var_dump: '; var_dump((string) $a == (string) $b); echo 'within var_dump: '; var_dump($a == $b); echo '=== :'."\n"; $i = (bool)((string) $a === (string) $b); var_dump($i); var_dump((string) '0010e2' === (string) '1e3'); echo '-'."\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/3QsG0
function name:  (null)
number of ops:  59
compiled vars:  !0 = $a, !1 = $b, !2 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ECHO                                                     'within+var_dump%3A+'
    3     1        INIT_FCALL                                               'var_dump'
          2        CAST                                          6  ~3      '0012e2'
          3        CAST                                          6  ~4      '1e3'
          4        IS_EQUAL                                         ~5      ~3, ~4
          5        SEND_VAL                                                 ~5
          6        DO_ICALL                                                 
    5     7        ASSIGN                                                   !0, '0012e2'
    6     8        ASSIGN                                                   !1, '1e3'
    8     9        INIT_FCALL                                               'var_dump'
         10        SEND_VAR                                                 !0
         11        DO_ICALL                                                 
    9    12        INIT_FCALL                                               'var_dump'
         13        SEND_VAR                                                 !1
         14        DO_ICALL                                                 
   10    15        ECHO                                                     '%3D%3D+++%3A%0A'
   11    16        ECHO                                                     'direct+++++++++%3A+'
   12    17        IS_EQUAL                                         ~11     !0, !1
         18        ASSIGN                                                   !2, ~11
   13    19        INIT_FCALL                                               'var_dump'
         20        SEND_VAR                                                 !2
         21        DO_ICALL                                                 
   14    22        ECHO                                                     'direct+strings+%3A+'
   15    23        CAST                                          6  ~14     !0
         24        CAST                                          6  ~15     !1
         25        IS_EQUAL                                         ~16     ~14, ~15
         26        ASSIGN                                                   !2, ~16
   16    27        INIT_FCALL                                               'var_dump'
         28        SEND_VAR                                                 !2
         29        DO_ICALL                                                 
   17    30        ECHO                                                     'string+in+var_dump%3A+'
   18    31        INIT_FCALL                                               'var_dump'
         32        CAST                                          6  ~19     !0
         33        CAST                                          6  ~20     !1
         34        IS_EQUAL                                         ~21     ~19, ~20
         35        SEND_VAL                                                 ~21
         36        DO_ICALL                                                 
   19    37        ECHO                                                     'within+var_dump%3A+'
   20    38        INIT_FCALL                                               'var_dump'
         39        IS_EQUAL                                         ~23     !0, !1
         40        SEND_VAL                                                 ~23
         41        DO_ICALL                                                 
   21    42        ECHO                                                     '%3D%3D%3D++%3A%0A'
   22    43        CAST                                          6  ~25     !0
         44        CAST                                          6  ~26     !1
         45        IS_IDENTICAL                                     ~27     ~25, ~26
         46        BOOL                                             ~28     ~27
         47        ASSIGN                                                   !2, ~28
   23    48        INIT_FCALL                                               'var_dump'
         49        SEND_VAR                                                 !2
         50        DO_ICALL                                                 
   24    51        INIT_FCALL                                               'var_dump'
         52        CAST                                          6  ~31     '0010e2'
         53        CAST                                          6  ~32     '1e3'
         54        IS_IDENTICAL                                     ~33     ~31, ~32
         55        SEND_VAL                                                 ~33
         56        DO_ICALL                                                 
   25    57        ECHO                                                     '-%0A'
         58      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
151.95 ms | 1400 KiB | 15 Q