【发布时间】:2014-02-18 19:01:07
【问题描述】:
在 PHP 5.4 中,我有一个 SplObjectStorage 实例,我在其中将对象与一些额外的元数据相关联。然后我需要遍历 SplObjectStorage 的实例并检索与当前键关联的对象。我尝试使用 SplObjectStorage::key 但这不起作用(但可能在 PHP 5.5 中有效)。
这是我正在尝试做的简化版本:
$storage = new SplObjectStorage;
$foo = (object)['foo' => 'bar'];
$storage->attach($foo, ['room' => 'bar'];
foreach ($storage as $value) {
print_r($value->key());
}
我真正需要的是某种方法来检索与键关联的实际对象。据我所知,甚至无法手动创建具有数字索引和 SplObjectStorage 指向的对象的单独索引数组。
【问题讨论】:
-
我是由 Anthony Ferrara 发现的,但它需要 PHP 5.5:github.com/ircmaxell/TrueObjectStore。