Existe uma maneira que se consiga comparar 2 objetos do mesmo tipo sem a necessidade da ter que realizar um if para atributo da classe em PHP?
Exemplo: $objetos->equals($objeto2);
Assumindo que os 2 objetos sejam da mesma classe.
Existe uma maneira que se consiga comparar 2 objetos do mesmo tipo sem a necessidade da ter que realizar um if para atributo da classe em PHP?
Exemplo: $objetos->equals($objeto2);
Assumindo que os 2 objetos sejam da mesma classe.
Olá Luis,
O PHP permite uma comparação simples apenas com ==
e vai considerar os objetos iguais caso sejam instâncias da mesma classe e que os valores dos atributos sejam iguais.
class Carro {
public $ano;
}
$c1 = new Carro();
$c2 = new Carro();
var_dump($c1 == $c2);
// true
$c1->ano = 2000;
$c2->ano = 2001;
var_dump($c1 == $c2);
// false
$c1->ano = 2020;
$c2->ano = 2020;
var_dump($c1 == $c2);
// true
Segue o link da documentação:
https://www.php.net/manual/pt_BR/language.oop5.object-comparison.php