PHP 严格比较两个对象是假的

PHP strict compare two objects is false

$a = new stdClass;
$a->first = 'James';
$a->last = 'Doe';

$b = (object) [
    'first' => 'James',
    'last' => 'Doe',
];

echo 'Loose compare: ' . ($a == $b ? 'equal' : 'different') . PHP_EOL; // equal
echo 'Type compare: ' . (gettype($a) == gettype($b) ? 'equal' : 'different') . PHP_EOL; // equal
echo 'Strict compare: ' . ($a === $b ? 'equal' : 'different') . PHP_EOL; // different

怎么严格比较不行?更重要的是,它们可以完全相同吗?

严格比较检查 $a$b 是否是 完全相同的 对象(相同的内存位置)。使它们相同(严格)的唯一方法是 $a = $b;

参考http://php.net/manual/en/language.oop5.object-comparison.php