3v4l.org

run code in 500+ PHP versions simultaneously
<?php $needle = 42; $identical = $needle; $equal = (string) $needle; $different = $needle + 1; foreach ([ [$different], [$identical], [$different, $identical], [$equal], [$different, $equal], ] as $haystack) { var_dump(array_search($needle, $haystack)); var_dump(array_search($needle, $haystack) !== false); var_dump(in_array($needle, $haystack)); echo "\n"; var_dump(array_search($needle, $haystack, true)); var_dump(array_search($needle, $haystack, true) !== false); var_dump(in_array($needle, $haystack, true)); echo "\n"; echo "\n"; }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 19, Position 2 = 71
Branch analysis from position: 19
2 jumps found. (Code = 78) Position 1 = 20, Position 2 = 71
Branch analysis from position: 20
1 jumps found. (Code = 42) Position 1 = 19
Branch analysis from position: 19
Branch analysis from position: 71
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 71
filename:       /in/E44t1
function name:  (null)
number of ops:  73
compiled vars:  !0 = $needle, !1 = $identical, !2 = $equal, !3 = $different, !4 = $haystack
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 42
    5     1        ASSIGN                                                   !1, !0
    6     2        CAST                                          6  ~7      !0
          3        ASSIGN                                                   !2, ~7
    7     4        ADD                                              ~9      !0, 1
          5        ASSIGN                                                   !3, ~9
   10     6        INIT_ARRAY                                       ~11     !3
          7        INIT_ARRAY                                       ~12     ~11
   11     8        INIT_ARRAY                                       ~13     !1
          9        ADD_ARRAY_ELEMENT                                ~12     ~13
   12    10        INIT_ARRAY                                       ~14     !3
         11        ADD_ARRAY_ELEMENT                                ~14     !1
         12        ADD_ARRAY_ELEMENT                                ~12     ~14
   13    13        INIT_ARRAY                                       ~15     !2
         14        ADD_ARRAY_ELEMENT                                ~12     ~15
   14    15        INIT_ARRAY                                       ~16     !3
         16        ADD_ARRAY_ELEMENT                                ~16     !2
         17        ADD_ARRAY_ELEMENT                                ~12     ~16
         18      > FE_RESET_R                                       $17     ~12, ->71
         19    > > FE_FETCH_R                                               $17, !4, ->71
   16    20    >   INIT_FCALL                                               'var_dump'
         21        INIT_FCALL                                               'array_search'
         22        SEND_VAR                                                 !0
         23        SEND_VAR                                                 !4
         24        DO_ICALL                                         $18     
         25        SEND_VAR                                                 $18
         26        DO_ICALL                                                 
   17    27        INIT_FCALL                                               'var_dump'
         28        INIT_FCALL                                               'array_search'
         29        SEND_VAR                                                 !0
         30        SEND_VAR                                                 !4
         31        DO_ICALL                                         $20     
         32        TYPE_CHECK                                  1018  ~21     $20
         33        SEND_VAL                                                 ~21
         34        DO_ICALL                                                 
   18    35        INIT_FCALL                                               'var_dump'
         36        INIT_FCALL                                               'in_array'
         37        SEND_VAR                                                 !0
         38        SEND_VAR                                                 !4
         39        DO_ICALL                                         $23     
         40        SEND_VAR                                                 $23
         41        DO_ICALL                                                 
   19    42        ECHO                                                     '%0A'
   20    43        INIT_FCALL                                               'var_dump'
         44        INIT_FCALL                                               'array_search'
         45        SEND_VAR                                                 !0
         46        SEND_VAR                                                 !4
         47        SEND_VAL                                                 <true>
         48        DO_ICALL                                         $25     
         49        SEND_VAR                                                 $25
         50        DO_ICALL                                                 
   21    51        INIT_FCALL                                               'var_dump'
         52        INIT_FCALL                                               'array_search'
         53        SEND_VAR                                                 !0
         54        SEND_VAR                                                 !4
         55        SEND_VAL                                                 <true>
         56        DO_ICALL                                         $27     
         57        TYPE_CHECK                                  1018  ~28     $27
         58        SEND_VAL                                                 ~28
         59        DO_ICALL                                                 
   22    60        INIT_FCALL                                               'var_dump'
         61        INIT_FCALL                                               'in_array'
         62        SEND_VAR                                                 !0
         63        SEND_VAR                                                 !4
         64        SEND_VAL                                                 <true>
         65        DO_ICALL                                         $30     
         66        SEND_VAR                                                 $30
         67        DO_ICALL                                                 
   23    68        ECHO                                                     '%0A'
   24    69        ECHO                                                     '%0A'
   10    70      > JMP                                                      ->19
         71    >   FE_FREE                                                  $17
   25    72      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
162.8 ms | 2251 KiB | 15 Q