いきなりですが、PHPでオブジェクトの比較をするのって面倒ではないですか? かといってバグ対応の方が面倒なのでテストをサボらずにしぶしぶ書く、そんな毎日でした。 そこで、厳密なオブジェクトの比較を簡単にできないかと考え解決策に至るまでの道のりの話です。 面倒な例 <?php class Foo { private $bar; private $baz; public function __construct($bar, $baz) { $this->bar = $bar; $this->baz = $baz; } public function getBar() { return $this->bar; } public function getBaz() { return $this->baz; } } <?php $fooList = $service->doSomething();