3v4l.org

run code in 500+ PHP versions simultaneously
<?php // Warnings in 8.3 $n = null; --$n; // Warning: Decrement on type null has no effect, this will change in the next major version of PHP var_dump($n); // NULL $false = false; --$false; // Warning: Decrement on type bool has no effect, this will change in the next major version of PHP var_dump($false); // bool(false) ++$false; // Warning: Increment on type bool has no effect, this will change in the next major version of PHP var_dump($false); // bool(false) $true = true; --$true; // Warning: Decrement on type bool has no effect, this will change in the next major version of PHP var_dump($true); // bool(true) ++$true; // Warning: Increment on type bool has no effect, this will change in the next major version of PHP var_dump($true); // bool(true) // Deprecations in 8.3 $empty = ""; --$empty; // Deprecated: Decrement on empty string is deprecated as non-numeric var_dump($empty); // int(-1) $s = "foo"; --$s; // Deprecated: Decrement on non-numeric string has no effect and is deprecated var_dump($s); // string(3) "foo" $s = "-cc"; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); // string(3) "-cd" $s = "Z "; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); // string(2) "Z " $s = " Z"; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); // string(2) " A" # Non-ASCII characters $s = "é"; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); # string(2) "é" $s = "あいうえお"; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); # string(15) "あいうえお" $s = "α"; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); # string(2) "α" $s = "1f.5"; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); # string(4) "1f.6" $s = "1.f.5"; ++$s; // Deprecated: Increment on non-alphanumeric string is deprecated var_dump($s); # string(5) "1.f.6" // Deprecations in 8.5 (PR already merged, test with git.master version) $s = "foo"; ++$s; // Deprecated: Increment on non-numeric string is deprecated var_dump($s); // string(3) "fop"
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/jYajv
function name:  (null)
number of ops:  79
compiled vars:  !0 = $n, !1 = $false, !2 = $true, !3 = $empty, !4 = $s
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    7     0  E >   ASSIGN                                                       !0, null
    8     1        PRE_DEC                                                      !0
    9     2        INIT_FCALL                                                   'var_dump'
          3        SEND_VAR                                                     !0
          4        DO_ICALL                                                     
   11     5        ASSIGN                                                       !1, <false>
   12     6        PRE_DEC                                                      !1
   13     7        INIT_FCALL                                                   'var_dump'
          8        SEND_VAR                                                     !1
          9        DO_ICALL                                                     
   14    10        PRE_INC                                                      !1
   15    11        INIT_FCALL                                                   'var_dump'
         12        SEND_VAR                                                     !1
         13        DO_ICALL                                                     
   17    14        ASSIGN                                                       !2, <true>
   18    15        PRE_DEC                                                      !2
   19    16        INIT_FCALL                                                   'var_dump'
         17        SEND_VAR                                                     !2
         18        DO_ICALL                                                     
   20    19        PRE_INC                                                      !2
   21    20        INIT_FCALL                                                   'var_dump'
         21        SEND_VAR                                                     !2
         22        DO_ICALL                                                     
   27    23        ASSIGN                                                       !3, ''
   28    24        PRE_DEC                                                      !3
   29    25        INIT_FCALL                                                   'var_dump'
         26        SEND_VAR                                                     !3
         27        DO_ICALL                                                     
   31    28        ASSIGN                                                       !4, 'foo'
   32    29        PRE_DEC                                                      !4
   33    30        INIT_FCALL                                                   'var_dump'
         31        SEND_VAR                                                     !4
         32        DO_ICALL                                                     
   35    33        ASSIGN                                                       !4, '-cc'
   36    34        PRE_INC                                                      !4
   37    35        INIT_FCALL                                                   'var_dump'
         36        SEND_VAR                                                     !4
         37        DO_ICALL                                                     
   39    38        ASSIGN                                                       !4, 'Z+'
   40    39        PRE_INC                                                      !4
   41    40        INIT_FCALL                                                   'var_dump'
         41        SEND_VAR                                                     !4
         42        DO_ICALL                                                     
   43    43        ASSIGN                                                       !4, '+Z'
   44    44        PRE_INC                                                      !4
   45    45        INIT_FCALL                                                   'var_dump'
         46        SEND_VAR                                                     !4
         47        DO_ICALL                                                     
   48    48        ASSIGN                                                       !4, '%C3%A9'
   49    49        PRE_INC                                                      !4
   50    50        INIT_FCALL                                                   'var_dump'
         51        SEND_VAR                                                     !4
         52        DO_ICALL                                                     
   51    53        ASSIGN                                                       !4, '%E3%81%82%E3%81%84%E3%81%86%E3%81%88%E3%81%8A'
   52    54        PRE_INC                                                      !4
   53    55        INIT_FCALL                                                   'var_dump'
         56        SEND_VAR                                                     !4
         57        DO_ICALL                                                     
   54    58        ASSIGN                                                       !4, '%CE%B1'
   55    59        PRE_INC                                                      !4
   56    60        INIT_FCALL                                                   'var_dump'
         61        SEND_VAR                                                     !4
         62        DO_ICALL                                                     
   57    63        ASSIGN                                                       !4, '1f.5'
   58    64        PRE_INC                                                      !4
   59    65        INIT_FCALL                                                   'var_dump'
         66        SEND_VAR                                                     !4
         67        DO_ICALL                                                     
   61    68        ASSIGN                                                       !4, '1.f.5'
   62    69        PRE_INC                                                      !4
   63    70        INIT_FCALL                                                   'var_dump'
         71        SEND_VAR                                                     !4
         72        DO_ICALL                                                     
   69    73        ASSIGN                                                       !4, 'foo'
   70    74        PRE_INC                                                      !4
   71    75        INIT_FCALL                                                   'var_dump'
         76        SEND_VAR                                                     !4
         77        DO_ICALL                                                     
         78      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
166.66 ms | 1586 KiB | 14 Q