Оператор spaceship <=> в PHP используется для сравнения двух значений и возврата результата. Этот оператор возвращает -1, если левый операнд меньше правого; 0, если они равны; и 1, если левый операнд больше правого.
$result = $a <=> $b;
1. Сортировка массива чисел
$numbers = [ 3, 1, 4, 1, 5, 9 ];
usort( $numbers, function( $a, $b ){
return $a <=> $b;
});
2. Сортировка массива объектов по свойству
class Person {
public $age;
public function __construct( $age )
{
$this->age = $age;
}
}
$people = [ new Person(35), new Person(20), new Person(50) ];
usort( $people, function( $a, $b ){
return $a->age <=> $b->age;
});
3. Определение знака разности двух чисел
$a = 5; $b = 7; $sign = $a <=> $b; // Вернёт -1, потому что $a < $b
Комментарии
0Нашли ошибку или хотите дополнить материал?