3v4l.org

run code in 500+ 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.5.0


preferences:
197.76 ms | 2621 KiB | 13 Q