$array[(object)$obj] = $other_obj;
PHP 数组仅适用于标量数据类型(如 int、string、float、boolean、null)的索引。我不能像其他语言一样使用对象作为数组索引吗?那么如何实现对象->对象映射呢?
(虽然我在这里见过类似的东西,但记不太清了,而且我的搜索创造力已经过时了。)
听起来您想重新发现该类SplObjectStorage,它可以提供从对象到其他数据(在您的情况下为其他对象)的映射。
它实现了 ArrayAccess 接口,因此您甚至可以使用您想要的语法,例如$store[$obj_a] = $obj_b.