3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Integers echo 1 <=> 1; // 0 echo 1 <=> 2; // -1 echo 2 <=> 1; // 1 // Floats echo 1.5 <=> 1.5; // 0 echo 1.5 <=> 2.5; // -1 echo 2.5 <=> 1.5; // 1 // Strings echo "a" <=> "a"; // 0 echo "a" <=> "b"; // -1 echo "b" <=> "a"; // 1 echo "a" <=> "aa"; // -1 echo "zz" <=> "aa"; // 1 // Arrays echo [] <=> []; // 0 echo [1, 2, 3] <=> [1, 2, 3]; // 0 echo [1, 2, 3] <=> []; // 1 echo [1, 2, 3] <=> [1, 2, 1]; // 1 echo [1, 2, 3] <=> [1, 2, 4]; // -1 // Objects $a = (object) ["a" => "b"]; $b = (object) ["a" => "b"]; echo $a <=> $b; // 0 $a = (object) ["a" => "b"]; $b = (object) ["a" => "c"]; echo $a <=> $b; // -1 $a = (object) ["a" => "c"]; $b = (object) ["a" => "b"]; echo $a <=> $b; // 1 // only values are compared $a = (object) ["a" => "b"]; $b = (object) ["b" => "b"]; echo $a <=> $b; // 0
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/5qFS9
function name:  (null)
number of ops:  41
compiled vars:  !0 = $a, !1 = $b
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   ECHO                                                     0
    5     1        ECHO                                                     -1
    6     2        ECHO                                                     1
    9     3        ECHO                                                     0
   10     4        ECHO                                                     -1
   11     5        ECHO                                                     1
   14     6        ECHO                                                     0
   15     7        ECHO                                                     -1
   16     8        ECHO                                                     1
   18     9        ECHO                                                     -1
   19    10        ECHO                                                     1
   22    11        ECHO                                                     0
   23    12        ECHO                                                     0
   24    13        ECHO                                                     1
   25    14        ECHO                                                     1
   26    15        ECHO                                                     -1
   29    16        CAST                                          8  ~2      <array>
         17        ASSIGN                                                   !0, ~2
   30    18        CAST                                          8  ~4      <array>
         19        ASSIGN                                                   !1, ~4
   31    20        SPACESHIP                                        ~6      !0, !1
         21        ECHO                                                     ~6
   33    22        CAST                                          8  ~7      <array>
         23        ASSIGN                                                   !0, ~7
   34    24        CAST                                          8  ~9      <array>
         25        ASSIGN                                                   !1, ~9
   35    26        SPACESHIP                                        ~11     !0, !1
         27        ECHO                                                     ~11
   37    28        CAST                                          8  ~12     <array>
         29        ASSIGN                                                   !0, ~12
   38    30        CAST                                          8  ~14     <array>
         31        ASSIGN                                                   !1, ~14
   39    32        SPACESHIP                                        ~16     !0, !1
         33        ECHO                                                     ~16
   42    34        CAST                                          8  ~17     <array>
         35        ASSIGN                                                   !0, ~17
   43    36        CAST                                          8  ~19     <array>
         37        ASSIGN                                                   !1, ~19
   44    38        SPACESHIP                                        ~21     !0, !1
         39        ECHO                                                     ~21
         40      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
138.61 ms | 996 KiB | 13 Q