<?php
/ Entiers
echo 1 <=> 1, ' '; / 0
echo 1 <=> 2, ' '; / -1
echo 2 <=> 1, ' '; / 1
/ Nombre flottants
echo 1.5 <=> 1.5, ' '; / 0
echo 1.5 <=> 2.5, ' '; / -1
echo 2.5 <=> 1.5, ' '; / 1
/ Chaines de caractères
echo "a" <=> "a", ' '; / 0
echo "a" <=> "b", ' '; / -1
echo "b" <=> "a", ' '; / 1
echo "a" <=> "aa", ' '; / -1
echo "zz" <=> "aa", ' '; / 1
/ Tableaux
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
/ Objets
$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
/ non seulement les valeurs sont comparées; les clés doivent correspondre
$a = (object) ["a" => "b"];
$b = (object) ["b" => "b"];
echo $a <=> $b, ' '; / 1
?>