3v4l.org

run code in 300+ PHP versions simultaneously
<?php $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/5SfUf
function name:  (null)
number of ops:  52
compiled vars:  !0 = $a, !1 = $b, !2 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '0012e2'
    3     1        ASSIGN                                                   !1, '1e3'
    5     2        INIT_FCALL                                               'var_dump'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                                 
    6     5        INIT_FCALL                                               'var_dump'
          6        SEND_VAR                                                 !1
          7        DO_ICALL                                                 
    7     8        ECHO                                                     '%3D%3D+++%3A%0A'
    8     9        ECHO                                                     'direct+++++++++%3A+'
    9    10        IS_EQUAL                                         ~7      !0, !1
         11        ASSIGN                                                   !2, ~7
   10    12        INIT_FCALL                                               'var_dump'
         13        SEND_VAR                                                 !2
         14        DO_ICALL                                                 
   11    15        ECHO                                                     'direct+strings+%3A+'
   12    16        CAST                                          6  ~10     !0
         17        CAST                                          6  ~11     !1
         18        IS_EQUAL                                         ~12     ~10, ~11
         19        ASSIGN                                                   !2, ~12
   13    20        INIT_FCALL                                               'var_dump'
         21        SEND_VAR                                                 !2
         22        DO_ICALL                                                 
   14    23        ECHO                                                     'string+in+var_dump%3A+'
   15    24        INIT_FCALL                                               'var_dump'
         25        CAST                                          6  ~15     !0
         26        CAST                                          6  ~16     !1
         27        IS_EQUAL                                         ~17     ~15, ~16
         28        SEND_VAL                                                 ~17
         29        DO_ICALL                                                 
   16    30        ECHO                                                     'within+var_dump%3A+'
   17    31        INIT_FCALL                                               'var_dump'
         32        IS_EQUAL                                         ~19     !0, !1
         33        SEND_VAL                                                 ~19
         34        DO_ICALL                                                 
   18    35        ECHO                                                     '%3D%3D%3D++%3A%0A'
   19    36        CAST                                          6  ~21     !0
         37        CAST                                          6  ~22     !1
         38        IS_IDENTICAL                                     ~23     ~21, ~22
         39        BOOL                                             ~24     ~23
         40        ASSIGN                                                   !2, ~24
   20    41        INIT_FCALL                                               'var_dump'
         42        SEND_VAR                                                 !2
         43        DO_ICALL                                                 
   21    44        INIT_FCALL                                               'var_dump'
         45        CAST                                          6  ~27     '0010e2'
         46        CAST                                          6  ~28     '1e3'
         47        IS_IDENTICAL                                     ~29     ~27, ~28
         48        SEND_VAL                                                 ~29
         49        DO_ICALL                                                 
   22    50        ECHO                                                     '-%0A'
         51      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
155.59 ms | 1400 KiB | 15 Q