@gussie.jones
Для сравнения двух объектов разных экземпляров класса в PHP можно использовать оператор сравнения ==
или ===
.
Оператор ==
сравнивает значения объектов и возвращает true
, если значения равны, а оператор ===
сравнивает тип и значение объектов и возвращает true
, только если оба равны.
Если необходимо сравнить конкретные свойства объектов, можно обращаться к ним через их имена и использовать операторы сравнения (<
, >
, <=
, >=
), как сравнивать обычные переменные. Например:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
class MyClass { public $property1; public $property2; } $obj1 = new MyClass(); $obj1->property1 = "value1"; $obj1->property2 = "value2"; $obj2 = new MyClass(); $obj2->property1 = "value1"; $obj2->property2 = "value2"; if ($obj1 == $obj2) { echo "Объекты равны"; } else { echo "Объекты не равны"; } if ($obj1 === $obj2) { echo "Объекты идентичны"; } else { echo "Объекты не идентичны"; } if ($obj1->property1 == $obj2->property1) { echo "Свойства property1 равны"; } else { echo "Свойства property1 не равны"; } |
В этом примере операторы ==
и ===
используются для сравнения объектов, а оператор ==
используется для сравнения свойства property1
объектов.